Capisco... procedo quindi con raccomandazioni generali.
Mi pare che la tua domanda sia: ci sono tante pagine da raccogliere, come faccio?
Allora, diamo per scontato che la macro che hai postato dia un risultato soddisfacente per la pagina 1. Ciononostante ti chiedo di ripartire da un file nuovo, perche' tutte le volte che hai eseguito la macro hai creato una nuova query (cioe' adesso sul tuo foglio hai 1-10-100 query, in quantita' ignota), anche se con i dati tutti sovrapposti.
Parti quindi da un file nuovo e imposta la query che ti serve, senza produrre pero' nessuna macro.
A questo punto, se il problema e' eseguire la query su N pagine, accodando i dati, manda in esecuzione questa macro che esequira' la query N volte quante sono le pagine che devi prelevare:
- Codice: Seleziona tutto
Sub QWloop()
For N = 1 To 23 '<<< QUANTE SONO le pagine da prelevare
NewConn = "URL;http://www.xxxxx.yy.zz/.../category.aspx?&Page=" & N & "&Sort=1&catid=14267"
NewDest = Range("B" & Rows.Count).End(xlUp).Offset(1, -1).Address
ActiveSheet.QueryTables(1).Connection = NewConn
ActiveSheet.QueryTables(1).Destination = Range(NewDest)
ActiveSheet.QueryTables(1).Refresh
Next N
End Sub
E' importante che sul tuo foglio ci sia una sola query, quindi se la query che imposti non produce i risultati che vuoi non devi crearne una nuova, ma MODIFICARE quella precedente.
Controlla anche tra le "Proprietà" della query sia tolta la spunta ad Abilita aggiornamento in background e ad Aggiorna ogni XX minuti.
Fai sapere, ciao.