Newsgroup: it.comp.appl.access
Titolo: Importare tabelle html da pagina web in access.

Buongiorno a tutti,
volevo sapere se � possibile importare le tabelle all'interno di una pagina 
web, in una tabella access tramite codice. (Come il menu "ESPORTA IN EXCEL" 
del tasto destro di una pagina web).
Nello specifico vorrei importare i risultati di calcio dal seguente 
indirizzo:
http://www.sportpress.com/stats/en/1771_italy_serie_a_2009_2010/1_head_to_head/1361_palermo.html
e cosi per tutte le squadre di serie A e B
Gia ho trovato un codice che scarica tutta la pagina web, ma io vorrei 
scaricare se possibile solo tabella dei risultati.
Grazie 

 ha scritto nel messaggio 
news:mCA6n.126315$9f6.1...@twister1.libero.it...

Dai un'occhiata a quanto ha scritto Sergio Mazza qui:
http://groups.google.it/group/it.comp.appl.access/msg/9011c87120b244d4?hl=it
devi solo ricordarti di aggiungere la seguente istruzione, dimenticata da 
Sergio
Const READYSTATE_COMPLETE = 4
Ciao
Antonio

 ha scritto nel messaggio 
news:4b5bf343$0$709$5fc...@news.tiscali.it...

Grazie dalla risposta, man non mi � molto chiaro. mi puoi dare maggiori info 
per esempio diciamo che la mia tabella dove importare i risultati di chiama 
Palermo.. dove lo inserisco ??
Grazie. 

 ha scritto nel messaggio 
news:v1_6n.126845$9f6.1...@twister1.libero.it...

Creati su una maschera un pulsante e chiamalo "EsempioHTML"
poi abilita l'evento click e adatta la routine che si genera in questo modo:
Private Sub EsempioHTML_Click()
Stop
const READYSTATE_COMPLETE = 4
On Error GoTo LeggiTabellaHTML_err
Dim oBrws As New SHDocVw.InternetExplorer
Dim oDoc As MSHTML.IHTMLDocument
Dim oTbl As MSHTML.IHTMLTable
Dim oTblRw As MSHTML.IHTMLTableRow
Dim oTblCll As MSHTML.IHTMLTableCell
oBrws.Navigate2 
"
http://www.sportpress.com/stats/en/1771_italy_serie_a_2009_2010/1_head_to_head/1361_palermo.html
"
Do
    If oBrws.readyState = READYSTATE_COMPLETE Then
        Exit Do
    End If
    DoEvents
Loop
Set oDoc = oBrws.Document '<-- documento HTML
' oDoc.Body.InnerText d� il contenuto della pagina visualizata
For Each oTbl In oDoc.getElementsByTagName("TABLE") '<-- per ogni tabella 
contenuta nel documento
' oTbl.InnerText d� una parte della pagina
  For Each oTblRw In oTbl.Rows
' oTblRw.InnerText d� una parte della pagina
    For Each oTblCll In oTblRw.Cells
      Debug.Print "valore contenuto: " & oTblCll.innerText
    Next oTblCll
  Next oTblRw
Next oTbl
Set oTbl = Nothing
Set oTblRw = Nothing
Set oTblCll = Nothing
Set oDoc = Nothing
Exit Sub
LeggiTabellaHTML_err:
    DoCmd.SetWarnings True
    Set oTbl = Nothing
    Set oTblRw = Nothing
    Set oTblCll = Nothing
    Set oDoc = Nothing
    MsgBox "Errore: " & Application.AccessError(Err.Number) & vbCrLf & 
"Riga: " & Erl & vbCrLf & "Numero: " & Err.Number
end sub
Prima di provare ad eseguire questa routine, devi andare sul menu 
"Strumenti" - "Riferimenti" e spunta i seguenti riferimenti:
Microsoft Internet Controls
Microsoft HTML Object Library
A questo punto fai click sul pulsante e la routine si ferma allo stop. 
Visualizza la finestra immediata e prosegui passo passo pigiando F8. Vedrai 
tutte le informazioni che potresti estrarre dal sito indicato da te. Di pi� 
non posso fare.
Ciao
Antonio

 ha scritto nel messaggio 
news:4b5c8315$0$697$5fc...@news.tiscali.it...

 Grazie Antonio, purtroppo non mi tira fuori niente, forse la pagina web non 
� strutturata in maniera corretta, 

 ha scritto nel messaggio 
news:Zyd7n.16035$Ua....@twister2.libero.it...

Devi avere commesso un errore. Controlla bene. Proprio questa routine l'ho 
inserita in una maschera ed ho visualizzato un'enormit� di dati. Guarda tu 
quello che ti serve. Ecco un esempio dei dati visualizzati nella finestra 
immediata:
valore contenuto: Italy - Serie A > Palermo > All 
Results2009/20102008/20092007/20082006/20072005/20062004/20052003/20042002/20032001/20022000/20011999/20001998/19991997/19981996/19971995/19961994/19951993/19941992/1993
 Choose Team Atalanta Bari Bologna Cagliari Catania Chievo Fiorentina Genoa 
Inter Juventus Lazio Livorno Milan Napoli Palermo Parma Roma Sampdoria Siena 
Udinese  League Stats Compare Teams
 Palermo
Performance GraphForm tableGeneral Stats
All Results
Won matches
Drawn matches
Lost matches
Palermo
24-JAN-10Palermo3-0FiorentinaItaly - Serie A
17-JAN-10Napoli0-0PalermoItaly - Serie A
14-JAN-10Lazio2-0PalermoItaly - Cup
10-JAN-10Palermo1-0AtalantaItaly - Serie A
06-JAN-10Sampdoria1-1PalermoItaly - Serie A
20-DEC-09Palermo1-0SienaItaly - Serie A
13-DEC-09Milan0-2PalermoItaly - Serie A
06-DEC-09Palermo2-1CagliariItaly - Serie A
29-NOV-09Chievo1-0PalermoItaly - Serie A
continuando a pigiare F8 si vedrebbero gli ulteriori dati.

 ha scritto nel messaggio 
news:4b5d9c0d$0$6834$5fc...@news.tiscali.it...

ok grazie sono riuscito ad estrarre i dati ed inserirli in una tabella.
adesso ho quest'alto problema, sempre se mi puoi aiutare:
le informazioni della tabella html  vengono inseriti nella tabella PAlermo 
di access che ha i seguenti campi: partita, risultato, evento.
vorrei che ad un certo punto della tabella html, (individuato dalla stringa 
"--" ) i dati vengano inseriti nei campi partita, risultatto evento, mentre 
attualmente  vengono inseriti solo nel campo partita.
io ho inserito :
--------------------------------------
lunghezza = Len(info)
    controllo1 = Mid(info, 3, 1)
    controllo2 = Mid(info, 7, 1)
    controllo = controllo1 & controllo2
    'MsgBox lunghezza
    If controllo = "--" Then
        rs.AddNew
        rs.Fields("DATA") = info
        rs.Fields("Squadra") =  ???? (qui dovrebbe venire scritto il 
prossimo valore del contenuto della tab html)
        rs.Fields("Risultato") = ???    (qui dovrebbe venire scritto il 
prossimo ulteriore valore del contenuto della tab html)
   'per 4 volte'
      rs.Update
    Else
       End If
--------------------------------
e poi riprendere dall'inizio
mi puoi aiutare anche qui ??