Jeg har lavet en access database med 6 tabeller, som indeholder salgstal fra 6 lande. Ved hjælp af en "Drop Down", vil jeg gerne have et VB script til at hente data fra det valgte land. Jeg vil tro man kan lave det med en masse if sætninger, men kan man klare den med et variabelt tabel opkald?
Sub GetData(vLand) Dim stTabel As String Select Case vLand Case 1: stTabel = "tblDanmark" Case 2: stTabel = "tblNorge" Case 3: stTabel = "tblUSA" Case 4: stTabel = "tblFrankring" Case 5: stTabel = "tbcSverige" Case 6: stTabel = "tblFinland" Case Else: End Select ' Exempel: ADOImportFromAccessTable "C:\FolderName\DataBaseName.mdb","TabelNavn", 1. celle for indsætning ADOImportFromAccessTable "C:\MinDataBase.mdb", stTabel, Sheets("Ark2").Range("A1") End Sub
Sub ADOImportFromAccessTable(DBFullName As String, _ TableName As String, TargetRange As Range)
Dim cn As ADODB.Connection, rs As ADODB.Recordset, intColIndex As Integer Set TargetRange = TargetRange.Cells(1, 1) ' open the database Set cn = New ADODB.Connection cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _ DBFullName & ";" Set rs = New ADODB.Recordset rs.Open TableName, cn, adOpenStatic, adLockOptimistic, adCmdTable For intColIndex = 0 To rs.Fields.Count - 1 ' the field names TargetRange.Offset(0, intColIndex).Value = rs.Fields(intColIndex).Name Next TargetRange.Offset(1, 0).CopyFromRecordset rs ' the recordset data
rs.Close Set rs = Nothing cn.Close Set cn = Nothing End Sub
Bak, beklager mit meget sene svar. Jeg havde helt glemt det, men skal stadig bruge det. Jeg ved ikke hvordan jeg skal bruge det, hvor skal jeg smide de 2 makroer?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.