Moderatori: Anthony47, Flash30005
Function Oroscopo2(ByVal Segno As Variant) As String
'Vedi http://www.pc-facile.com/forum/viewtopic.php?f=26&t=99714
'vedi http://www.pc-facile.com/forum/viewtopic.php?f=26&t=108508
'
Dim myColl As Object, myTag, myBase As String, IE As Object, my2Coll As Object
Dim OldD As Long
'
On Error GoTo exitA
myBase = "http://www.oggi.it/oroscopo/oroscopo-di-oggi/"
'
If IE Is Nothing Then Set IE = CreateObject("InternetExplorer.Application")
'
'Debug.Print "Start: ", Timer
aSegni = Split("Ariete Toro Gemelli Cancro Leone Vergine Bilancia Scorpione Sagittario Capricorno Acquario Pesci")
If IsNumeric(Segno) Then Segno = aSegni(Segno - 1)
Segno = Application.WorksheetFunction.Proper(Segno)
myurl = myBase & Segno & "-oggi.shtml"
With IE
.Visible = False
.navigate myurl
'Debug.Print Timer
Do While .Busy: DoEvents: Loop 'attesa not busy
'Debug.Print "NotBusy: ", Timer
mytim = Timer
Do Until .readyState = 4 'attesa Document complete
DoEvents
If Abs(Timer - mytim) > 2 Then
'Debug.Print "T.O.: ", Timer
If IE.document.getElementsByTagName("div").Length = OldD And OldD > 100 Then
Exit Do
Else
OldD = IE.document.getElementsByTagName("div").Length
'Debug.Print Format(Timer - mytim, "0.0"), OldD, Timer
mytim = Timer
End If
End If
Loop
End With
'Debug.Print "Usciti: ", IE.document.getElementsByTagName("div").Length, Timer
'
Set myColl = IE.document.getElementsByTagName("div")
For Each myTag In myColl
If myTag.className = "clearfix rimmed" Then
Set my2Coll = myTag.getElementsByTagName("p")
For I = 0 To my2Coll.Length - 1
mit = mit & my2Coll(I).innerText & vbCrLf
Next I
Oroscopo2 = UCase(Segno) & vbCrLf & Trim(Replace(mit, Chr(160), " ", , , vbTextCompare))
Exit For
End If
Next myTag
exitA:
IE.Quit
Set IE = Nothing
Set myColl = Nothing: Set my2Coll = Nothing
End Function
=Oroscopo2(E1)
=CERCA.VERT(E1;LaTabella;2;0)
Foglio1.Range("D2").Value = "" & Oroscopo2(vSegno)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Foglio1.Range("D2").Value = "" & Oroscopo2(E1)
End Sub
Foglio1.Range("D2").Value = "" & Oroscopo2(Range("E1"))
Torna a Applicazioni Office Windows
Mettere tutto MAIUSCOLO un range di celle Autore: raimea |
Forum: Applicazioni Office Windows Risposte: 7 |
non riesco più a mettere google come nuova pagina Autore: zaq1 |
Forum: Sistemi Operativi Windows Risposte: 6 |
Mettere in primo piano un file excel rispetto ad un altro Autore: systemcrack |
Forum: Applicazioni Office Windows Risposte: 5 |
dovrei mettere un antivirus efficace a 360 gratis sul mio pc Autore: mp420 |
Forum: Sicurezza e Privacy Risposte: 2 |
Excel: eseguire macro se modificato valori celle Autore: dipdip |
Forum: Applicazioni Office Windows Risposte: 5 |
Visitano il forum: Nessuno e 6 ospiti