Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Prova a chiedere sul forum HTML.it indicato.
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
ho arrangiato un codice che dato un valore nella cella attiva mi effettua una ricerca nel sito Yahoo finanza. Fin qui tutto bene il problema, che non so risolvere nonostante mille tentativi, è come importare nella cella accanto a quella attiva un dato che appare nella pagina risultato della ricerca. Per esempio ottenuto come risultato della ricerca la pagina https://it.finance.yahoo.com/lookup;\_ylc=X3oDMTIzb244cDNwBGtleXcDWFMwOTk2NzgyODM0BG1pZANtZWRpYXF1b3Rlc3NlYXJjaARzZWMDZ2V0cXVvdGVzYnRuBHNsawNsb29rdXA-?s=XS0996782834, dovrei importare il valore "X78283.IT" .
di seguito il mio codiceSub yahoo()
Set ie = CreateObject("InternetExplorer.Application")
With ie
.Visible = True
.Navigate "https://it.finance.yahoo.com/q?s"
Do Until .readyState = 4: DoEvents: Loop
.Document.All.Item("s").Value = ActiveCell
ie.Document.Forms("quote").Submit
Do Until .readyState = 4: DoEvents: Loop
Do While .Busy: DoEvents: Loop
End With
Grazie a tutti
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.
Prova a chiedere sul forum HTML.it indicato.
Grazie per i suggerimenti.
Ho provato in questo modo:
ie.document.getElementById("yfi_sym_results").getElementsByClassName("yui-dt").getElementsByClassName("yui-dt-odd").innertext
Worksheets("ala").Range("B1").Value = innertext
ma niente, mi rassegnerrò al copia e incolla.
Grazie comunque per il tempo dedicatomi.
Mi sembra di capire che dentro a quell'oggetto (una riga <tr> ) ci siano due celle <td>. La prima cella è quella che contiene il dato di tuo interesse.
Io chiederei anche qui:
dove il dom delle pagine HTML è di casa.... ;-)
E qui la spiegazione del dom HTML:
Grazie infinite per la prontissima risposta.
Immaginavo qualche cosa del genere, ma non sapevo da dove partire. Ho provato a completare il mio codice aggiungendo le seguenti stringhe:
With htm.getElementByclassname("yui-dt-odd")
ThisWorkbook.Worksheets("b").Range("g1").Value = .innerText
End With.
ma mi segnale un errore nella prima riga:
errore di run time 424 nessun oggetto.
Buona serata
Devi recuperare il dato dall'oggetto che lo contiene.
Nel tuo caso, vedendo lo HTML, direi da qui (parte evidenziata):
Da quel poco che capisco, dalla class yui-dt-odd.
Tieni presente che da alcune pagine che presentano i dati in modo particolare, recuperare dati è quasi impossibile.
Ne abbiamo discusso ad esempio qui: