Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Macro excel per copiare sorgente pagina web

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

Macro excel per copiare sorgente pagina web

Postdi marcogabber » 10/02/17 11:46

Buongiorno a tutti, sono ore che mi arrovello sul web e sul forum per cercare una risposta al mio quesito... ma non l'ho trovata.... spero che qualcuno di voi possa aiutarmi...

ho bisogno di avere una macro che mi apra una pagina web CON GOOGLE CHROME (che è il mio browser predefinito), che mi prenda la sorgente di quella pagina (quello che manualmente faccio con CTRL+U), che mi copi tutto quello che trova (quello che manualmente faccio con CTRL+A e poi CTRL+C), e che mi incolli questi dati nella Cella A1 del foglio "Scarico" presente nello stesso file excel (quello che manualmente faccio con CTRL+V).

Fatto questo una serie di formule ed un'ulteriore macro già fatta da me, fanno tutto ciò che mi serve.

Ho trovato questa macro che mi apre la pagina web, ma non la sorgente
Codice: Seleziona tutto
Sub Vai_SitoInternet()

On Error GoTo 10

Dim shell As Object
Set shell = CreateObject("shell.application")
shell.Open "https://www.clashofstats.com/players/anubi-VVUR2PRJ/profile"

Exit Sub

10:
MsgBox "SITO ATTUALMENTE NON DISPONIBILE", vbExclamation + vbOKOnly, "CARICAMENTO SITO INTERNET  "
Exit Sub

End Sub

Ringrazio in anticipo chi possa aiutarmi!!!
Marco
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39

Sponsor
 

Re: Macro excel per copiare sorgente pagina web

Postdi marcogabber » 10/02/17 18:46

Nessuno che ne sa qualcosina??? Sigh sigh :( :cry: :cry: :cry: :cry:
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39

Re: Macro excel per copiare sorgente pagina web

Postdi Anthony47 » 11/02/17 20:00

Ciao marcogabber, benvenuto nel forum.
Prova con questa macro, vediamo se e' quello che intendevi.
Codice: Seleziona tutto
Sub GetText()
Dim IE As Object, But, I As Long
Dim flFound As Boolean
'
Set IE = CreateObject("InternetExplorer.Application")
With IE
    .Visible = True
'    .Navigate "http://www.pc-facile.com/forum/viewtopic.php?f=26&t=108179&p=634536#p634536"
    .Navigate " https://www.clashofstats.com/players/anubi-VVUR2PRJ/profile"
    Do While .Busy: DoEvents: Loop
    Do Until .ReadyState = 4: DoEvents: Loop
    Application.SendKeys "^a", True
    Application.Wait (Now + TimeValue("0:00:01"))
    Application.SendKeys "^c", True
    Application.Wait (Now + TimeValue("0:00:01"))
End With
IE.Quit
Set IE = Nothing
'Range("A1").Select
Range("A1").Select
ActiveSheet.PasteSpecial Format:="Testo", Link:=False, DisplayAsIcon:=False
End Sub

Aprira' una sessione IE, ma finito il lavoro la richiude.

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

Re: Macro excel per copiare sorgente pagina web

Postdi marcogabber » 19/02/17 12:53

Ciao, grazie intanto per la risposta....

io avrei necessità di fare il tutto tramite Chrome.... è possibile?

Grazie mille in anticipo
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39

Re: Macro excel per copiare sorgente pagina web

Postdi Anthony47 » 20/02/17 00:24

Premetto che avevo interpretato male la richiesta (copiare il contenuto della pagina e non il suo sorgente).
Comunque lavorando alla cieca (cioe' senza avere la certezza che la pagina e' stata letta) puoi inviare comandi tramite "SendKeys":
Codice: Seleziona tutto
Sub GetHtmlWEB()
Dim IE As Object, But, I As Long
Dim flFound As Boolean
'
Sheets("Scarico").Select
Cells.Clear
Dim myShell As Object
Set myShell = CreateObject("shell.application")
myShell.Open "http://www.corriere.it"                        '<<< Il tuo Url
    Application.Wait (Now + TimeValue("0:00:5"))
    Application.SendKeys "^u", True
    Application.Wait (Now + TimeValue("0:00:10"))
    Application.SendKeys "^a", True
    Application.Wait (Now + TimeValue("0:00:01"))
    Application.SendKeys "^c", True
    Application.Wait (Now + TimeValue("0:00:01"))
AppActivate ("Microsoft Excel")
Range("A1").Select
ActiveSheet.PasteSpecial Format:="Testo", Link:=False, DisplayAsIcon:=False
End Sub

Tramite i servizi IE la cosa si potrebbe fare piu' "scientificmente" e con risultati piu' aderenti alla realta'.

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

Re: Macro excel per copiare sorgente pagina web

Postdi marcogabber » 20/02/17 14:10

PERFETTO, E' PROPRIO QUELLO CHE CERCAVO!!!!!
Funziona perfettamente


Grazie mille!!!!!!!!!!!!!
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39

Re: Macro excel per copiare sorgente pagina web

Postdi marcogabber » 20/02/17 14:57

Ah, ultima cosa.... ho adattato la tua macro nella mia in modo da fargli fare quello che volevo.... mi resta un solo problema:

il comando

shell.Open "https://www.clashofstats.com/players/anubi-VVUR2PRJ/profile"

in realta, trovandosi dentro un ciclo di for, che ad ogni giro deve aprire un link diverso... come posso farlo puntare a dei link che ho nell'excel?

Per capirci ho delle celle nel foglio "link" che contengono i seguenti link
A1 --- > LINK1
A2 --- > LINK2
A3 --- > LINK3
A4 --- > LINK4

Dovrei dire al comando shell.open di aprire la cella Ax, con x che è il mio ciclo e che varierà da 1 al numero che decido io

Non so se mi so spiegato.... speriamo :)
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39

Re: Macro excel per copiare sorgente pagina web

Postdi marcogabber » 20/02/17 15:39

Ho risolto.... si può chiudere, grazie ancora!!!!
marcogabber
Newbie
 
Post: 6
Iscritto il: 10/02/17 11:39


Torna a Applicazioni Office Windows


Topic correlati a "Macro excel per copiare sorgente pagina web":


Chi c’è in linea

Visitano il forum: Nessuno e 40 ospiti