Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Importare dati in excel in tempo reale

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 dati in excel in tempo reale

Postdi ilPrincipito » 28/11/16 21:51

Ciao a tutti, sto cercando di costruire un file excel che riesca ad importare i dati da un sito web in maniera "dinamica" in tempo reale. Il sito in questione è diretta.it però non mi interessa il calcio ma il basket. Ho guardato più discussioni che ci sono state sul forum riguardante l'importazione di dati da siti esterni ma nessuno tratta quello che sto cercando io. In breve cerco di spiegare qual è la mia intenzione, una partita di basket è composta da 4 periodi, io vorrei sapere quale delle 2 squadre arriva prima a 20 punti in ogni periodo e chi ovviamente vince il periodo. Detto ciò credo che per "segnare" chi arriva prima a 20 si debba per forza aggiornare in tempo reale altrimenti si sfalsa tutto ma non saprei davvero come fare.. spero di essermi spiegato bene..
grazie cmq
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Sponsor
 

Re: Importare dati in excel in tempo reale

Postdi Anthony47 » 29/11/16 01:39

Ciao principito, benvenuto nel forum.
Scelta una soluzione che importa il dato che ti serve, se vuoi eseguire in continuazione basta mettere in coda alla procedura il comando Application.OnTime; es
Codice: Seleziona tutto
Application.OnTime TimeValue("00:00:10"), "LaMiaMacro"

Questa rilancera' dopo 10 secondi la macro indicata.
Immagino che quando il risultato e' raggiunto vorrai interrompere la ripetizione a cascata, cosa che potrai ottenere aggiungendo un If ; quindi
Codice: Seleziona tutto
If ThisWorksheet.Sheets("NomeFoglio").Range("L'IndirizzoDiCella).Value < 20 then
    Application.OnTime TimeValue("00:00:10"), "LaMiaMacro"
End If

Se hai problema ad attuare i suggerimenti noi siamo qui....
Avatar utente
Anthony47
Moderatore
 
Post: 17447
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 29/11/16 11:15

Ciao Anthony, grazie per la risposta, si, credo che la tua sia una buonissima idea però c'è il problema che il mio file, spunto di una vostra discussione passata e modificato per quello che serve a me, che non funziona come vorrei. come posso postarlo per farvelo vedere?? grazie
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi patel » 29/11/16 11:44

guardando gli Annunci prima delle discussioni "Come fare per"
patel
Utente Senior
 
Post: 309
Iscritto il: 24/04/12 16:03

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 29/11/16 12:18

grazie patel. Allora posto il file di cui parlavo in precedenza, mi scarica i risultati nel foglio 2. Ho notato che per ogni seconda squadra mi sfalsa la riga e va a capo es. nella partita Washington Wizards-Sacramento Kings, Washington Wizards è in linea mentre Sacramento Kings mi va a capo. Per ovviare a questo problema ho creato il foglio3 con il collegamento (di 2 partite al momento) che mi mette in ordine le partite per consultarle in maniera più chiara.
Anthony io sinceramente non saprei dove aggiungere quelle righe di codice in modo da farlo funzionare in maniera corretta. Comunque se ho capito bene quando una delle 2 arriva a 20 il programma si blocca,giusto?? mentre io vorrei che andasse avanti tranquillamente nell'aggiornare i risultati solo che mi evidenziasse la squadra che è arrivata prima a 20 in ogni singolo periodo.

http://www.filedropper.com/prova2
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 30/11/16 12:43

ragazzi, qualcuno può aiutarmi cortesemente..
Grazie
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi Anthony47 » 30/11/16 20:58

Questi sono lavori di pazienza e di tempo, oltre che di conoscenza; qualche ingreediente manca sempre.
Mi pare che il problema sia il disallineamento tra le colonne della prima partita e quella della seconda; ora non sarebbe difficile riposizionare il contenuto delle righe, noto il tracciato record voluto e quello ottenuto dalla macro, in un modo piu' facile da osservare (e' anche questo un gioco di pazienza e di tempo, bastano le conoscenze delle formule Excel).
Comunque aggiungendo questa riga in questa posizione la macro posiziona i dati meglio:
Codice: Seleziona tutto
        For Each tdtd In trtr.Cells
        If Trim(tdtd.classname) = "cell_ac team-away" And J = 0 Then J = 2     'AGGIUNTA
            Cells(I + 1, J + 1) = tdtd.innerText

A questo punto puoi provare a sviluppare il contenitore in cui inserire la ripetizione della navigazione e della cattura dei risultati.

Fai sapere...
Avatar utente
Anthony47
Moderatore
 
Post: 17447
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 30/11/16 21:21

Ciao Anthony, grazie innanzitutto! hai rragione che ci vuole tempo e pazienza, inoltre sono alle prime armi con excel quindi, perdona l'ignoranza, ti assicuro che l'impegno l'ho metto. detto ciò, si, oltre a quello del riposizionare il contenuto delle celle, ho il problema che non riesco a capire dove posizionare gli stralci di codice che mi hai mandato in precedenza e, secondo te, come faccio ad evidenziare la squadra che arriva prima a 20 in ognuno dei 4 periodi della partita??
grazie
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 30/11/16 21:26

codice aggiunto ed un problema risolto.. adesso le celle sono tutte in linea!!
-1!! grazie
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi ilPrincipito » 03/12/16 18:19

ragazzi buonasera, ho corretto il codice, adesso viene aggiornato ogni 40 secondi. Anthony ho inserito il codice che mi hai suggerito per permettere l'allineamento, solo che alcuni si allineano altri no. Il mio intento rimane sempre quello che il programma mi deve evidenziare la squadra che arriva a 20 punti prima dell'altra, in ognuno dei 4 periodi della partita, perciò sul foglio3 ho cercato di fare delle prove..
Mi sono reso conto che devo fare in modo di bloccare l'aggiornamento quando una delle 2 arriva a 20 altrimenti la formula del SE che ho inserito va in "crisi".. avete suggerimenti sul come ovviare a questo problema?? Il file lo posto magari è più facile capire quello che intendo dire.
grazie

http://www.filedropper.com/pilot2
ilPrincipito
Newbie
 
Post: 7
Iscritto il: 26/11/16 09:22

Re: Importare dati in excel in tempo reale

Postdi Anthony47 » 03/12/16 20:54

Eh, devi leggere il codice html e modificare dove serve...
Per l'allineamento: invece di If Trim(tdtd.classname) = "cell_ac team-away" And J = 0 Then J = 2
Codice: Seleziona tutto
            If (Trim(tdtd.classname) = "cell_ac team-away" Or Trim(tdtd.classname) = "cell_ac team-away bold") And J = 0 Then J = 2

Quanto a indicare chi arriva prima a un certo risultato, imposta su Foglio3 le partite che vuoi monitorare; supponiamo che in K8 ci sia il punteggio della prima e in K9 quello della seconda e in K10 il tempo corrente, allora inserirai nella macro prima di IE.Quit le istruzioni
Codice: Seleziona tutto
'Per ogni partita impostata in Foglio3:
If Sheets("Foglio3").Range("K8") >= 20 Or Sheets("Foglio3").Range("K9") >= 20 Then
    Sheets("Foglio3").Range("M8").Value = Sheets("Foglio3").Range("K8")
    Sheets("Foglio3").Range("M9").Value = Sheets("Foglio3").Range("K9")
    Sheets("Foglio3").Range("M10").Value = Sheets("Foglio3").Range("K10")   'Tempo
End If

Ripeti questo blocco per le pertite che hai impostato, adattando gli intervalli.
Nota: invece di usare riferimenti fissi per i risultati da riportare su Foglio3 e' meglio se usi Formule, ad esempio con Cerca.Vert, cosi' ti bastera' scrivere il nome delle squadre e ottenere i dati presenti in Foglio2

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


Torna a Applicazioni Office Windows


Topic correlati a "Importare dati in excel in tempo reale":


Chi c’è in linea

Visitano il forum: Nessuno e 38 ospiti