Mi era sfuggita la risposta....
Se non riesci a far risalire il contenuto di A1 a qualche operazione fatta da tastiera allora il mio suggerimento e':
-nella query disabiliti l' aggiornamento periodico
-ti fai una macro "On Time" che parte all' apertura del file e che si riesegue ogni N minuti
Tecnicamente, partendo da Excel:
-Alt-F11 per aprire l' editor delle macro
-nel frame di sx doppioclick sulla voce ThisWorkbook
-inserisci queste istruzioni nel frame di dx
- Codice: Seleziona tutto
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnTime NextT, "Ripeti", , False
End Sub
Private Sub Workbook_Open()
Call Ripeti
End Sub
-Menu /Inserisci /Modulo, inserisci queste istruzioni nel frame di dx:
- Codice: Seleziona tutto
Public NextT As Date
Sub Ripeti()
NextT = Now + TimeValue("00:01:00") '<<<1
If Range("A1") = 1 Or (Range("A1") = 2 And Range("Z1") <> 2) Then
ActiveSheet.QueryTables("Nomequery").Refresh BackgroundQuery:=True '<<<2
[Z1] = [A1]
End If
Application.OnTime NextT, "Ripeti"
End Sub
Adatta le istruzioni marcate <<<, col ritardo tra una query e la successiva (<<<1, formato hh:mm:ss) e il nome della tua query (la puoi leggere, e anche impostare, con tasto dx sull' area di query, Proprieta' intervallo dati).
NB: ho usato la cella Z1 per replicare il valore precedente di A1; se Z1 non fosse libera usa un' altra cella e cambia di conseguenze le istruzioni
La macro andra' periodicamente in esecuzione, col periodo impostato in <<<1, dall' apertura foglio a sua chiusura
Prova e fai sapere.