Å vite hvordan man skal utføre Structured Query Language uttalelser mot et Excel-regneark kan være verdifulle . Microsoft Excel er et regnearkprogram inkludert i Microsoft Office-pakken. SQL er hovedsakelig brukt i relasjonsdatabaser , men kan også brukes til å lese et Excel-regneark . Visual Basic for Applications ( VBA ) brukes til å automatisere rutineoppgaver innenfor Microsoft Office-programmer . I noen få trinn kan du skrive VBA -kode for å utføre en SQL-setning og lese data lagret i et Excel-regneark . Du trenger
Microsoft Office Access 2007
Microsoft Office Excel 2007
Vis flere instruksjoner
en
Start Microsoft Excel 2007 og skriv " COLUMN1 " in " A1 "," COLUMN2 "in" B1 ".
Type" A "i " A2 "," B "i " A3 " , " C " i " A4 "," D " i " A5 . "
Type " 1" i " B2 ", " 2" i " B3 ", " 3" i " B4 " , "4" i " B5 . "
Lagre regnearket til "C : . \\ "som" book1.xls "
2
start Microsoft Office Access 2007 og klikk " Blank Database ", velg deretter " Create " . Klikk "Database Verktøy" og velg " Visual Basic. " Klikk på " Insert "-feltet og velg " Module ".
3
Skriv inn følgende for å skape " runSQLExcel " subrutinen :
Private Sub runSQLExcel ( )
Trykk " Enter".
4
Skriv inn følgende for å definere variabler : en
Konst adOStatic = 3
Konst adLkOpt = 3
< p> Konst adCmdString = & H1
5
Skriv inn følgende for å definere og åpne forbindelser til Excel regneark : en
Set objectConn = CreateObject ( " ADODB.Connection ")
Set objectRst = CreateObject ( " ADODB.Recordset ")
objectConn.Open " Provider = Microsoft.Jet.OLEDB.4.0 ; " & _
"Data Source = C : \\ Book1.xls , "& _
" Utvidet Properties = " " Excel 8.0, HDR = Yes , "", "
6
Skriv inn følgende for å kjøre en SQL uttalelse og åpne en ny Recordset : en
objectRst.Open "SELECT * FROM [ Ark1 $] ", _
objectConn , adOStatic , adLkOpt , adCmdString
7
skriv inn følgende å sløyfe gjennom Recordset og vise resultater for begge kolonnene i regnearket : en
inntil objectRst.EOF
MsgBox " Colum1 :" & objectRst.Fields.Item ( ». COLUMN1 ") Value & "" & _
" Colum2 : . " & objectRst.Fields.Item ( " COLUMN2 ") Verdi
objectRst.MoveNext
< p> Loop
Trykk " F5 " for å kjøre subrutine .