ti ringrazio, ma ahimè non mi funziona
ho anche provato a invertire l'ordine in cui passare i parametri - mi sembrava che nella dichiarazione fossero all'inverso di come mi hai detto tu - ma ciccia.

io ho inteso così:

Public Sub chkAlwaysOnTop_Click()
Dim CAPT As String
Dim NLL As String
Dim RES As Long

CAPT = XLAPP.Application.ActiveWindow.Caption
NLL = vbnull
RES = (FindWindow(NLL, CAPT))

VALE = hWnd(RES)
Window_SetAlwaysOnTop VALE, chkAlwaysOnTop.Value
End Sub


(VALE dichiarato Public as Long nel module)
-allora: scritto così s'incavola e mi dice

Compile error:
Wrong number of arguments or invalid property assignment
riferito a
VALE = hWnd(RES)


per curiosità ho commentato VALE = hWnd(RES)
tanto per vedere cosa ci va in RES - resta sempre a zero
CAPT però è giusto la caption del form di Excel - posso anche forzarla, ma ci va dentro solo "filename" (per dire) - NON ci va
"Microsoft Excel - filename" ...è qui che toppa?

grazie