Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

einfacher Datenbank Zugriff

Forumthread: einfacher Datenbank Zugriff

einfacher Datenbank Zugriff
22.01.2007 16:05:08
König
Hi
Ich suche in einer Access Datenbank in zwei bestimmten Spalten je einen Wert, und möchte dass bei Finden dieser 2 Werte, der Inhalt einer weiteren anderen Zelle ausgegeben wird (alles in der selben Zeile).
SpalteA und SpalteC müssen Suchkriterien entsprechen - dann SpalteB bei Erfolg ausgeben.
Ich habs bis jetzt so:
query = "Select Distinct SpalteB From [DB-Name] Where SpalteA = " & X & " And SpalteC = '" & N & "'"
rec.Open query, connection
SpalteB = rec.GetRows
Aber es passiert nichts mit dem Array "SpalteB". Es bleibt leer.
Was ist hier der Fehler?
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: einfacher Datenbank Zugriff
25.01.2007 23:01:07
Herby
Hallo König,
ich hab dir mal ein KOMPLETTES Makro für eine Abfrage reingestellt
Es wird der Firstname, Lastname und Geburtstag (DoB) angezeigt, wenn
der Firstname=John und der Lastname=Joy; du kannst ja dein Makro
entsprechend anpassen.

Sub suche()
' Command-Objekt
Dim var_Datei As Variant
Dim Conn As ADODB.Connection
Dim Rec As ADODB.Recordset
Dim Cmm As ADODB.Command
Dim Anzahl As Long
Dim Sql As String
var_Datei = Application.GetOpenFilename("Access-Datei (*.mdb),*.mdb")
If var_Datei = False Then Exit Sub
ActiveSheet.Cells(2, 1) = "Datenbankdatei:"
ActiveSheet.Cells(2, 3) = var_Datei
Set Conn = New ADODB.Connection
Conn.Open "Provider =microsoft.jet.oledb.4.0;Data Source=" & var_Datei
Dim VName As String
Dim NName As String
VName = "John"
VName = "'" & VName & "'"
NName = "Joy"
NName = "'" & NName & "'"
Sql = "SELECT Firstname, Lastname, DoB FROM tblStaff "
Sql = Sql & "WHERE Firstname= " & VName & "AND Left(Lastname,3)= " & NName & ";"
MsgBox Sql
Set Rec = New ADODB.Recordset
Set Cmm = New ADODB.Command
With Cmm
.CommandType = adCmdText
.CommandText = Sql
.ActiveConnection = Conn
.Execute
End With
Rec.Open Cmm
ActiveSheet.Cells(4, 1).CopyFromRecordset Rec
Set Cmm = Nothing
Rec.Close: Conn.Close
End Sub

viele Grüße
Herby
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige