copiare dati da sito internet
Hai un problema con Excel? 
copiare dati da sito internet
di salvog82 (utente non iscritto) data: 22/01/2014 22:10:38
Salve vorrei chiedervi se è possibile creare una macro che, a click di un pulsante, copi in un foglio Excel dei dati un sito internet.
Dovrei ottenere qualcosa di analogo al file allegato in cui riporto anche il sito.
Solitamente utilizzo calc; mi connetto al sito, seleziono i dati, vado su open office calc, incolla speciale, testo non formattato e poi imposto come nell'immagine che ho inserito nel file allegato.
Non vorrei utilizzare web query per copiare le tabelle.
Su internet ho visto qualcosa di analogo con l'utilizzo di objIE ma non so adattarlo al mio caso.
Grazie, in anticipo per la vostra attenzione, a presto.
Copia riga quando la prima colonna cambia valore
di Luca (utente non iscritto) data: 22/01/2014 23:08:12
Ciao
Ho un foglio di lavoro che si aggiorna automaticamente tramite DDE
Devo copiare le celle A2 C2 E2 AL2 se la formula in A2 restituisce come testo “SI” oppure “NO” e le copie devono essere accodate (messe in fila) in un foglio diverso della stessa cartella (file).
L’intervallo che devo tenere sotto controllo è A2:A41
Faccio un esempio per chiarire meglio quello che vorrei fare con una macro VBA
Se A2 nel foglio1 = “SI” copia A2 C2 E2 AL2 nel foglio2 nelle celle A2 C2 E2 G2Se A2 nel foglio1 = “NO” copia A2 C2 E2 AL2 nel foglio2 nelle celle A3 C3 E3 G3Se A11 nel foglio1 = “NO” copia A11 C11 E11 AL11 nel foglio2 nelle celle A4 C4 E4 G4Se A41 nel foglio1 = “SI” copia A41 C41 E41 AL41 nel foglio2 nelle celle A5 C5 E5 G5
Mi servirebbe anche una macro che apra un msgbox con un avviso sonoro e il tasto ok per chiuderlo quando una delle celle A2:A41 <> 0 , il titolo del msgbox deve essere il testo della cella che l’ha attivato e il messaggio nel msgbox deve essere il testo presente nell’intervallo (C2:C41) + quello di (E2:E41)
Faccio un esempio: se A5=”SI” apri un mgsbox con titolo “SI” e testo (il testo presente in C5 e E5).
Grazie
di patel data: 23/01/2014 08:13:33
Luca, non devi accodarti ad una discussione aperta da altri cambiando argomento, aprine una tua
di patel data: 23/01/2014 08:21:23
questa funziona, togli gli spazi all'URL
Sub Web_Query()
Dim wsWQ As Worksheet
Dim rCell As Range
Set wsWQ = Foglio2
For Each rCell In Foglio1.Range("A1", Foglio1.Cells(Foglio1.Rows.Count, "A").End(xlUp))
With wsWQ.QueryTables.Add(Connection:= _
"URL;h t t p://seriea1x2.altervista.org/storico.php", _
Destination:=wsWQ.Cells(wsWQ.Rows.Count, "B").End(xlUp)(3, 1))
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "14"
.WebPreFormattedTextToColumns = False
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = True
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
.SaveData = True
End With
Next rCell
End Sub |
di Luca (utente non iscritto) data: 23/01/2014 11:16:54
Chiedo scusa per aver inserito la mia domanda nel posto sbagliato,
l'ho inserita tramite smartphone è qualcosa è andato storto.
Comunque ora ho aperto una nuova discussione come suggeritomi da patel.
di salvog82 (utente non iscritto) data: 23/01/2014 14:54:28
Patel grazie per la risposta. La tua macro funziona ma non è proprio quello che vorrei. Aiutandomi col registratore di macro sono riuscito a crearne una che soddisfa le mie esigenze. In excel funziona, ma avrei la necessità di farla funzionare anche in open office calc. Ho provato anteponendo i soliti:
rem Attribute VBA_ModuleType=VBADocumentModule
Option VBASupport 1
ma non funziona. Sapresti dirmi come posso fare?
Grazie, a presto.
Ps allego il file excel che ho creato
di patel data: 23/01/2014 16:49:17
Notoriamente Calc digerisce soltanto le istruzioni VBA più semplici, rivolgiti ai forum dedicati per risolvere i problemi su Calc
di salvog82 (utente non iscritto) data: 23/01/2014 17:04:57
Grazie lo stesso. Sapresti consigliarmi qualcuno di questi forum su calc?
di patel data: 23/01/2014 17:55:09
http://forum.openoffice.org/it/forum/viewforum.php?f=9&sid=81d0a23708ad30cdd5b322167557f659
http://forum.openoffice.org/en/forum/viewforum.php?f=20
di patel data: 23/01/2014 18:52:48
con OO invece di una macro potresti fare così:
Inserisci->Collegamento a dati esterni->Inserisci l'indirizzo->Selezioni i dati da importare
Ogni volta che apri il file gli dici di aggiornare i dati
di salvog82 (utente non iscritto) data: 23/01/2014 18:53:16
Grazie, proverò sul forum italiano.
A presto.
non mi funziona!
di Luca.Donati data: 07/03/2014 15:01:40
Buongiorno a tutti.
@patel, il tuo codice mi interessa molto, ma non mi funziona.
Forse non ho capito come lanciarlo.
Nel ciclo For Each... Next, fai riferimento alle celle del Foglio1, poi mandi il codice nel Foglio2 per copiarci le tabelle, ma ho come l'impressione che non hai detto al codice cosa fare del contenuto delle celle del Foglio1.
Mi sbaglio?
A meno che nel file allegato originariamente da salvog82 ci fosse qualche dettaglio che ora non è più comprensibile...
Anche io devo importare in Excel dei dati presi così da internet.
Puoi dirmi qualcosa di più?
di Luca.Donati (utente non iscritto) data: 07/03/2014 17:01:39
(ho scoperto che posso togliere la spunta "risolto" anche se non sono all'origine del post)
di patel data: 07/03/2014 18:29:15
il mio codice è solo di esempio e funziona per un file particolare, se vuoi aiuto allega il tuo corredato di spiegazioni
Vuoi Approfondire?