Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Access 2010 - Listenfeld an ADO-Recordset knüpfen

Mitglied: AndyAh

AndyAh (Level 2) - Jetzt verbinden

31.01.2014, aktualisiert 11:54 Uhr, 3027 Aufrufe, 9 Kommentare

Hi NG,

wie kann ich ein Listenfeld an ein ADO-Recordset knüpfen. Die zugrundeliegende Datenquelle ist keine mit Access verknüpfte ODBC Datenquelle.

Gruß
Andy

PS: Ich habe es gerade mit "Listenfeld.Recordset = rs" versucht und bekomme den Fehlercode 3265
Da Auslesen eines einzelnen Feldes per Recordset funktioniert.
Mitglied: colinardo
31.01.2014, aktualisiert um 12:07 Uhr
Hallo Andy,
warum erstellst du keine Datenverknüpfung zu deiner ODBC-Quelle Tab: Externe Daten > Importieren und Verknüpfen > ODBC-Datenbank.
Damit lässt sich eine Tabelle in deiner Datebank einrichten welche mit dieser Datenquelle synchron ist, und welche dann als Quelle für den Inhalt deines Listenfeldes dienen kann.

Ansonsten durchlaufe alle Zeilen eines Recordsets und erstelle für jede Zeile einen Listeneintrag...nach dieser Art und Weise:
01.
Set rs = CurrentDb.OpenRecordset("Tabelle") 
02.
rs.MoveFirst 
03.
While Not rs.EOF 
04.
   Liste1.AddItem rs.Fields("Spalte").Value 
05.
   rs.MoveNext 
06.
Wend
Grüße Uwe
Bitte warten ..
Mitglied: AndyAh
31.01.2014, aktualisiert um 12:31 Uhr
Hi Uwe,

ich möchte die Userverwaltung des SQL-Servers nutzen. Beim Durchlauf des Recordsets ergab sich der Fehler:6014

Hie mal das ganze Listing:

01.
Private Sub Form_Load() 
02.
 
03.
   Dim connstr As String 
04.
   Dim sql As String 
05.
   Dim conn As New ADODB.Connection 
06.
   Dim rs As New ADODB.Recordset 
07.
 
08.
   'user und passwort kommen aus einem Anmeldefenster 
09.
   connstr = "DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=127.0.0.1;DATABASE=adressen;" & "USER=" & user & ";" & "PASSWORD=" & passwort & "; OPTION=3" 
10.
    
11.
   conn.ConnectionString = connstr 
12.
    
13.
   On Error GoTo LogonError 
14.
     
15.
   conn.Open 
16.
 
17.
   On Error Resume Next 
18.
 
19.
   
20.
   sql = "SELECT Nachname FROM mitglied" 
21.
   rs.Open sql, conn, adOpenDynamic, adLockOptimistic 
22.
   rs.MoveFirst 
23.
    
24.
   Fehlercode: 6026 
25.
   'Set Me!mitglieder.Recordset = rs 
26.
 
27.
  Fehlercode: 3265 
28.
   While Not rs.EOF() 
29.
     mitglieder.AddItem rs!Fields("Nachname").Value 
30.
     rs.MoveNext 
31.
   Wend 
32.
    
33.
   rs.Close 
34.
   conn.Close 
35.
 
36.
LogonError: 
37.
    If Err.Number <> 0 Then 
38.
        MsgBox "Fehler beim Login zur Datenbank: " & Err.Number 
39.
    End If 
40.
End Sub
Gruß
Andy
Bitte warten ..
Mitglied: colinardo
31.01.2014 um 12:27 Uhr
Das kommt vermutlich daher weil ein ADODB.Recordset nicht das selbe ist wie ein DAO.Recordset welches das Listenfeld erwartet. Du müsstest also mit deinem Recordset des SQL-Servers ein DAO-Recordset füllen und das dem Listenfeld zuweisen.

Grüße Uwe
Bitte warten ..
Mitglied: colinardo
31.01.2014 um 13:00 Uhr
Zitat von AndyAh:
Hie mal das ganze Listing:
01.
Private Sub Form_Load() 
02.
 
03.
   Dim connstr As String 
04.
   Dim sql As String 
05.
   Dim conn As New ADODB.Connection 
06.
   Dim rs As New ADODB.Recordset 
07.
 
08.
   'user und passwort kommen aus einem Anmeldefenster 
09.
   connstr = "DRIVER={MySQL ODBC 5.2 ANSI Driver};SERVER=127.0.0.1;DATABASE=adressen;" & "USER=" & user & ";" & "PASSWORD=" & passwort & "; OPTION=3" 
10.
    
11.
   conn.ConnectionString = connstr 
12.
    
13.
   On Error GoTo LogonError 
14.
     
15.
   conn.Open 
16.
 
17.
   On Error Resume Next 
18.
 
19.
   sql = "SELECT Nachname FROM mitglied" 
20.
   rs.Open sql, conn, adOpenDynamic, adLockOptimistic 
21.
   rs.MoveFirst 
22.
    
23.
   ' Listbox leeren bevor die Mitglieder hinzugefügt werden. 
24.
   For i = 0 To mitglieder.ListCount - 1 
25.
        mitglieder.RemoveItem 0 
26.
   Next 
27.
   While Not rs.EOF 
28.
     mitglieder.AddItem rs!Nachname 
29.
     rs.MoveNext 
30.
   Wend 
31.
    
32.
   rs.Close 
33.
   conn.Close 
34.
 
35.
LogonError: 
36.
    If Err.Number <> 0 Then 
37.
        MsgBox "Fehler beim Login zur Datenbank: " & Err.Number 
38.
    End If 
39.
End Sub
Bitte warten ..
Mitglied: AndyAh
31.01.2014 um 13:00 Uhr
Hi Uwe,

wie müsste dann die DAO Datenbank-Connection bzw der Connectionstring für MySQL ODBC 5.2 ANSI Treiber heissen?

Gruß
Andy
Bitte warten ..
Mitglied: colinardo
31.01.2014 um 13:04 Uhr
Zitat von AndyAh:
wie müsste dann die DAO Datenbank-Connection bzw der Connectionstring für MySQL ODBC 5.2 ANSI Treiber heissen?
das geht IMHO nicht.
Bitte warten ..
Mitglied: AndyAh
31.01.2014 um 13:15 Uhr
Hi,

und was ist mit dem Fehler in:

01.
  Fehlercode: 3265  
02.
   While Not rs.EOF()  
03.
     mitglieder.AddItem rs!Fields("Nachname").Value  
04.
     rs.MoveNext  
05.
   Wend 
In der Schleifte sollte alles richtig sein, trotzdem bekomme ich die Fehlermeldung.

Gruß
Andy
Bitte warten ..
Mitglied: colinardo
31.01.2014, aktualisiert um 13:25 Uhr
Zitat von AndyAh:

In der Schleifte sollte alles richtig sein, trotzdem bekomme ich die Fehlermeldung.
hatte ich oben doch oben bereits im Code korrigiert. Bei mir läuft dein obiges Konstrukt:
rs!Fields("Nachname").Value
nicht und auch die beiden Klammern hinter EOF sind Quatsch, da es eine Eigenschaft ist und keine Funktion.
machs innerhalb der Schleife entweder so:
01.
mitglieder.AddItem rs!Nachname
oder so:
01.
mitglieder.AddItem rs.Fields("Nachname").Value
beachte den Punkt anstatt dem Ausrufezeichen hinter rs.
Bitte warten ..
Mitglied: AndyAh
31.01.2014 um 13:24 Uhr
Hi,

dein letzter Vorschlag hat es gebracht. Danke.

Gruß
Andy
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Access 2010 vba Recordset
gelöst Frage von EUuserVB for Applications3 Kommentare

Hallo zusammen, ich arbeite seit langem mal wieder mit Access und vba: Ich habe eine Datenbank, zwei Tabellen (identisch ...

VB for Applications

VBA Access: Synchronisation zwischen Recordset und Access Tabelle

Frage von qwertz1VB for Applications2 Kommentare

Hallo, Ich habe in Access ein VBA-Skript programmiert. Das Skript holt sich Daten von einer MySQL Server. Das geht ...

Datenbanken

Access 2010 Filter zurücksetzen

gelöst Frage von Dr.CornwallisDatenbanken6 Kommentare

Liebe Gemeinde, wieder mal ein Access/VBA Problem: ich habe eine Abfrage, SQL Code: Diese Abfrage ist mit einem Formular ...

Microsoft Office

Access 2010 Autowert anpassen

gelöst Frage von lordofremixesMicrosoft Office10 Kommentare

Hallo zusammen, ich habe in einer Accessdatenbank mit zugehörigem Formular ein Feld ID, welches vom Datentyp Autowert ist und ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 21 StundenWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 21 StundenSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 1 TagDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein Beitrag bei Heise (siehe Link folgend). Behörden ignorieren Sicherheitsbedenken gegenüber ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 1 TagSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
Exchange Server
Exchange Postfach Einbindung Betriebs-rat -Arzt, Bewerbung .
gelöst Frage von YellowcakeExchange Server23 Kommentare

Hey ich habe da mal eine Denksport Aufgabe bekommen Genutzt wird ein Exchange Server 2010. hier gibt es den ...

Windows Server
Delgegierte OU via RDP verwalten - Objektverwaltung zuweisen
gelöst Frage von TOAOICEWindows Server12 Kommentare

Hallo, ich habe folgendes Problem. Ich möchte in meiner Domäne (Server2016), einer Gruppe (OUAdmin) Berechtigungen auf die OU Test ...

LAN, WAN, Wireless
Gigabit-Lan mit zwei 4-adrigen Kabeln?
Frage von ArvedirmerLAN, WAN, Wireless11 Kommentare

Ich habe folgendes Problem: Ich betreue eine kleine Firma die sich im 1.Stock eines Gebäudes befindet. Es existiert ein ...

Router & Routing
Routing Probleme mit Firewall
gelöst Frage von mb1811Router & Routing9 Kommentare

Hallo Zusammen! Ich habe folgende Problematik, wo ich ein wenig Input benötige: Gem. angehängter Skizze habe ich folgenden Stand: ...