Come interrogare le tabelle HTML con accesso VBA

September 2

Come interrogare le tabelle HTML con accesso VBA


Visual Basic, Applications Edition (VBA) è il linguaggio di programmazione per il programma di database di Access di Microsoft. VBA in grado di eseguire le stesse funzioni disponibili nella solita interfaccia di accesso, compresi i dati di interrogazione fonti esterne di accesso. Un tipo di dati esterni è una tabella HTML. Interrogazione di un tale tabella da Access VBA prevede il collegamento al documento HTML che contiene la tabella, quindi eseguire una query sul tavolo. Il vantaggio principale di interrogare una tabella HTML da Access VBA è il tempo risparmiato sostituendo l'intervento utente di una query standard con l'automazione di una query VBA-based.

istruzione

1 Aprire il blocco note e incollare in esso il seguente documento HTML di esempio. Questo documento contiene una piccola tabella di dati relativi ai filmati. Potrai interrogare questa tabella da un programma di accesso VBA:

<HTML>

<Table border = 1>

<Tbody>

&lt;tr>

& Lt; th> Titolo & lt; / th>

& Lt; th> Direttore & lt; / th>

& Lt; / tr>

& Lt; tr>

& Lt; td> Excalibur & lt; / td>

& Lt; td> Boorman & lt; / td>

& Lt; / tr>

& Lt; tr>

& Lt; td> Star Wars & lt; / td>

& Lt; td> Lucas & lt; / td>

& Lt; / tr>

</ Tbody>

</ Table>

</ HTML>

2 Premere il tasto "Controllo" + "S" e digitare "C: \ movies.html" per il nome del file.

3 Open Access e premere il tasto "Alt" + "F11" per entrare l'ambiente di programmazione per VBA.

4 Clicca comando "Module" del menu "Inserisci" per creare una nuova finestra per entrare la query subroutine HTML in.

5 Incollare il seguente codice di programma nella nuova finestra. La subroutine top crea una connessione, tramite il comando "TransferText", con la tabella nel file HTML dal punto 1. Il sottoprogramma "queryHTML" verrà eseguito una query SQL sui dati della tabella trasferiti.

Public Sub importHTMLData ()

Dim TabName As String

TabName = "Film"

DoCmd.TransferText acLinkHTML,, TabName, "C: \ movies.html", -1

End Sub

Public Sub queryHTML ()

Const qry = "qHTML"

DBS fiochi come DAO.Database

Dim recset Come DAO.Recordset

Set dbs = CurrentDb

Set recset = dbs.OpenRecordset (qry)

Do While Non recset.EOF

Debug.Print "Title: " & recset![title]

recset.MoveNext

Ciclo continuo

recset.Close

dbs.Close

End Sub

6 Fare clic su qualsiasi dichiarazione nel sottoprogramma "importHTMLData", quindi premere il tasto "F5" per eseguire la subroutine.

7 Premere il tasto "Alt" + "F11" per tornare ad Access, quindi fare clic frecce del riquadro di navigazione ( "<<") due volte per aggiornare i dati del riquadro. Il riquadro visualizzerà ora una nuova tabella, "Film", che la subroutine importHTMLData prodotta.

8 Fare clic sull'icona per la tavola "Movies" nel pannello di navigazione, quindi fare clic sul menu "Crea", seguito dal pulsante "Query" nella barra degli strumenti principale.

9 Fare doppio clic sulla voce "film" nella finestra di dialogo "Aggiungi tabella", quindi trascinare la voce "*" dalla piccola finestra "di un film" sul primo comando della griglia della query. Questa azione crea una query che la seconda subroutine VBA hai scritto utilizzerà per recuperare i dati dalla nuova tabella Film.

10 Premere il tasto "Controllo" + "S", quindi digitare "qHTML" per il nome della query.

11 Premere il tasto "Alt" + "F11" per tornare all'ambiente di sviluppo. Fare clic su qualsiasi dichiarazione nella subroutine queryHTML, quindi premere il tasto "F5" per eseguire la subroutine.

12 Premere il tasto "Controllo" + "G" per aprire la finestra "immediata" del ambiente di sviluppo. La finestra visualizzerà l'uscita della dichiarazione debug.Print della subroutine queryHTML. Quella uscita contiene i risultati dell'esecuzione della subroutine queryHTML della query qHTML (dal punto 10).