Condividi:        

importare tabella da web su excel

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

importare tabella da web su excel

Postdi gizmo86 » 09/11/14 11:04

salve a tutti,

vorrei importare in automatico su un foglio excel la tabella presente in questo link:

http://www.stat-football.com/en/t/ita10.php?c=23

selezionando su "Overall P=" il numero di giornate desiderato, verrà creata la relativa tabella.

a me interesserebbe importare in automatico la classifica delle ultime 3 giornate, io ho provato ad importarla da excel tramite dati->da web, ma purtroppo importa sempre la classifica delle ultime 6 giornate.

c'è un modo per poterla importare?

grazie a tutti :D
gizmo86
Newbie
 
Post: 2
Iscritto il: 09/11/14 10:52

Sponsor
 

Re: importare tabella da web su excel

Postdi Anthony47 » 09/11/14 23:07

Ciao gizmo86, benvenuto nel forum.
Ti consiglio di usare questa variante della macro GetTabbb, usata piu' volte per automatizzare raccolta dati da web:
Codice: Seleziona tutto
Sub GetTabbb()
'
myURL = "http://www.stat-football.com/en/t/ita10.php?c=23"
Set ie = CreateObject("InternetExplorer.Application")
   
With ie
    .navigate myURL
    .Visible = True

MsgBox ("Naviga sui risultati che ti servono; POI premi Ok")

    Do While .Busy: DoEvents: Loop    'Attesa not busy
    Do While .readyState <> 4: DoEvents: Loop 'Attesa documento
End With
'
myStart = Timer  'attesa addizionale
Do
    DoEvents
    If Timer > myStart + 2 Or Timer < myStart Then Exit Do
Loop

'Leggi le tabelle       <<<
Worksheets.Add                '..su un nuovo foglio
'Sheets("Foglio3").Select   '..OPPURE su un foglio esistente
'Cells.Clear                '....che viene azzerato all' inizio
Set mycoll = ie.document.getElementsByTagName("table")
aaaa = mycoll.Length
Set myitm = mycoll(3)

'For Each myItm In my2coll
    For Each trtr In myitm.Rows
        For Each tdtd In trtr.Cells
            Cells(I + 1, J + 1) = tdtd.innerText
            J = J + 1
        Next tdtd
        I = I + 1: J = 0
    Next trtr
I = I + 1
'Next myItm

'Stop     'Vedi testo

'Chiusura IE
ie.Quit
Set ie = Nothing
End Sub

La macro apre la pagina web in una sessione sua di InternetExplorer e si ferma con un messagebox che invita a completare la navigazione per ottenere i risultati che si desiderano; dopo l' Ok al messagebox la macro raccoglie il contenuto della tabella e chiude InternetExplorer.
Operativamente:
-da excel, Alt-F11 per aprire l' editor delle macro
-Menu /Inserisci /Modulo
-copia il codice e incollalo nel frame vuoto di dx

Torna poi su excel e manda in esecuzione la macro (Alt-F8, scegli GetTabbb dall' elenco che ti propone, premi Esegui) e controlla l'esito.
Il codice apre sempre un nuovo foglio per raccogliere i risultati; se vuoi invece usare un foglio gia' presente allora devi editare le righe che seguono il testo"Leggi le tabelle", mettendo un apostrofo in testa a Worksheets.Add e toogliendolo alle due righe successive.

Il codice funziona oggi, nulla garantisce che funzionera' anche domani, dipendendo in gran parte dall' analisi del sorgente html della pagina.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: importare tabella da web su excel

Postdi gizmo86 » 10/11/14 22:37

GRAZIE MILLE!!!

fa esattamente quello che chiedevo, sei un grande :D

volevo chiederti un'altra cosa, se volessi che la tabella viene copiata in un punto preciso del foglio, ad esempio a partire dalla cella A10, su quale linea di comando devo agire? su cells?

Grazie ancora! :D
gizmo86
Newbie
 
Post: 2
Iscritto il: 09/11/14 10:52

Re: importare tabella da web su excel

Postdi Anthony47 » 14/11/14 15:50

Mi era sfuggita la domanda…
Prova inserendo questa istruzione in questa posizione:
Codice: Seleziona tutto
Set myitm = mycoll(3)      'Esistente
J=10                       'AGGIUNGI QUESTA
'For Each myItm In my2coll 'Esistente


Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "importare tabella da web su excel":


Chi c’è in linea

Visitano il forum: Nessuno e 72 ospiti