Ciao Peppe
Forse ci siamo

Dalle prove effettuate a me funziona.
Invece di inserire in Workbook_Open devi inserire la macro in WorkBook_Activate delle cartelle interessate ed i messaggi in un Modulo Standard, sempre in ogni cartella
In ThisWorkBook di Cartel1 (ovviamente i nomi sono da cambiare)
Private Sub Workbook_Activate()
If ActiveWorkbook.Name = "Cartel1.xlsm" Then
Application.OnKey "{F3}", "messaggio"
End If
End Sub
In un Modulo Standard di Cartel1
Sub messaggio()
If ActiveWorkbook.Name = "Cartel1.xlsm" Then
MsgBox "Ciao"
End If
End Sub
In ThisWorkBook di Cartel2
Private Sub Workbook_Activate()
If ActiveWorkbook.Name = "Cartel2.xlsm" Then
Application.OnKey "{F3}", "messaggio"
End If
End Sub
In un Modulo Standard di Cartel2
Sub messaggio()
If ActiveWorkbook.Name = "Cartel2.xlsm" Then
MsgBox "Benvenuto"
End If
End Sub
Prova e fai sapere. Ciao,
Mario