Come eseguire un'istruzione SQL in un foglio di calcolo di Excel

April 1

Come eseguire un'istruzione SQL in un foglio di calcolo di Excel


Saper eseguire Structured Query Language dichiarazioni nei confronti di un foglio di calcolo Excel può essere prezioso. Microsoft Excel è un foglio di calcolo incluso nella suite Microsoft Office. SQL è utilizzato principalmente in database relazionali, ma può anche essere utilizzato per leggere un foglio di calcolo di Excel. Visual Basic, Applications Edition (VBA) viene utilizzato per automatizzare le attività di routine all'interno delle applicazioni Microsoft Office. In pochi passi è possibile scrivere codice VBA per eseguire un'istruzione SQL e leggere i dati salvati in un foglio di calcolo di Excel.

istruzione

1 Avviare Microsoft Excel 2007 e digitare "Column1" a "A1", "Column2" in "B1".

Tipo "A" in "A2", "B" in "A3", "C" in "A4", "D" in "A5".

Tipo "1" in "B2", "2" in "B3", "3" in "B4", "4" in "B5".

Salvare il foglio di calcolo per "C: \" come "Book1.xls".

2 Avviare Microsoft Office Access 2007 e fare clic su "Database vuoto", quindi selezionare "Crea". Fai clic su "Strumenti database" e selezionare "Visual Basic". Fare clic su "inserire" e selezionare "Modulo".

3 Digitare quanto segue per creare la subroutine "runSQLExcel":

Private Sub runSQLExcel ()

Premere Invio."

4 Digitare la seguente per definire le variabili:

Const adOStatic = 3

Const adLkOpt = 3

Const adCmdString = & H1

5 Digitare quanto segue per definire e connessioni aperte al foglio di calcolo di Excel:

Set objectConn = CreateObject ( "ADODB.Connection")

Set objectRst = CreateObject ( "ADODB.Recordset")

objectConn.Open "Provider = Microsoft.Jet.OLEDB.4.0;" & _

"Data Source=C:\Book1.xls;" & _

"Extended Properties =" "Excel 8.0; HDR = Yes;" ";"

6 Digitare quanto segue per eseguire un'istruzione SQL e aprire un nuovo Recordset:

objectRst.Open "SELECT * FROM [Sheet1 $]", _

objectConn, adOStatic, adLkOpt, adCmdString

7 Digitare quanto segue per scorrere il recordset e visualizzare i risultati per entrambe le colonne nel foglio di calcolo:

Fare Fino objectRst.EOF

MsgBox "Colum1:" & objectRst.Fields.Item("Column1").Value & " " & _

"Colum2:" & amp; objectRst.Fields.Item ( "Column2"). Valore

objectRst.MoveNext

Ciclo continuo

Premere il tasto "F5" per eseguire la subroutine.