Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Ciao Daniele,
Fatto!!
grazie mille
Paolo
Questo browser non è più supportato.
Esegui l'aggiornamento a Microsoft Edge per sfruttare i vantaggi di funzionalità più recenti, aggiornamenti della sicurezza e supporto tecnico.
Buongiorno a tutti
ho questo problema:
vorrei fare eseguire del codice dopo che un foglio di Excel abbia caricato i dati da un altro foglio mediante una query.
Il codice l'ho inserito nell'oggetto "Questa cartella di lavoro" perché venga eseguito all'apertura del file.
Quello che accade è che il codice viene eseguito ma poi la query importa i dati cancellando i dati precedentemente inseriti.
Ho provato le seguenti soluzioni inserendo queste righe di codice all'inizio:
ThisWorkbook.RefreshAll
Application.CalculateUntilAsyncQueriesDone
sostituito da
Application.Wait Now + TimeValue("00:00:05")
ma entrambe non hanno funzionato.
Mi potete aiutare?
grazie
Paolo
Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.
Ciao Daniele,
Fatto!!
grazie mille
Paolo
Ciao Daniele
scusa ma sono "gnucco". Cosa intendi per fare il refresh? si fa da codice? se si come?
grazie ancora
Paolo
Lo puoi fare, come ho già detto, disabiliti l'aggiornamento, fai il refresh, esegui il codice che scrive il vlookup ed il vlookup non verrà sovrascritto.
Se decidi di farlo all'apertura lo metti nel metodo workbook_open.
Ciao Daniele
il flag è deselezionato.
Quello che voglio ottenere è che, dopo l'aggiornamento della tabella attraverso la query, con un un VLOOKUP su un'altra tabella venga associato un codice ad un articolo della riga.
Però sono obbligato ad aggiornare la query ad ogni apertura.
grazie comunque anche per qualsiasi altro suggerimento!
Paolo
Ciao Paolo
sono Daniele, un consulente indipendente microsoft.
Dovresti disabilitare il background refresh prima di lanciare la query
ActiveWorkbook.Connections("nomedellaquery").OLEDBConnection.BackgroundQuery = False
ActiveWorkbook.Connections("nomedellaquery").refresh
' altro codice
e poi in seguito il tuo codice.
La stessa cosa puo essere fatto da Dati->aggiorna tutti (espandi)->proprieta
Segui questa guida: