| |

Visual-Basic EinsteigerRe: Datenbank und ListBOX | |  | Autor: Hamlet | Datum: 08.08.02 08:55 |
| Ich würde M$ ausnutzen. Wenn du das nicht magst dann skip diese Mail:
zuerste die Erklärung des Skriptes, unten ein Skript für dich:
Zuerst habe ich einen ODBC-Treiber in der Systemsteuerung erstellt. (Eine Datei-DSN hinzugefügt).
Jetzt connecte ich mich mit dieser File:
Der Spass dahinter sind standartparameter, die sind zwar wichtig hinzuschreiben, aber inhaltlich egal
#ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
#"ODBC;DBQ=FILENAMEDERQUELLE;DefaultDir=FILEDIRECTORY;Driver= Microsoft #Access Driver (*.mdb)};D" _
#), Array( _
#"riverId=25;FIL=MS #Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=#5;SafeTransactions=0;Threads=3;UID=" _
Hier geben wir die Ausgabestelle(Destination) an, die könnte man dann auf dein Textfeld anpassen
#), Array("admin;UserCommitSync=Yes;")), Destination:=Range("A1"))
Nun kommt die Datenbankabfrage per SQL, da steht eigentlich nur das er alle Datensätze aus der File nehmen soll
#.Sql = Array( _
#"SELECT Adressen.ID, Adressen.Name, Adressen.Nachname, Adressen.Adresse" & #Chr(13) & "" & Chr(10) & "FROM `FILEDIRECTORYdb1`.Adressen Adressen" _
#)
Gut, um nun ein bisschen weiter zu kommen:
1) deine Datenbank heisst adressen.mdb, deine Tabelle heisst adressen, dein VBA Formular heisst formular und das Textfeld heisst Textfeld
2) ODBC einstellen (--> Systemsteuerung --> ODBC Datenquelle --> Datei DSN --> Hinzufügen --> Durchclicken (ist leicht verständlich), dabei speicherst du die Verbindung als "adressenodbc"
Jetzt kommt nur noch skript
3) Jetzt tippst du, oder kopierst den Quelltext
ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DBQ=C:Verzeichnissaddressen.mdb;DefaultDir=G:Verzeichnis;Driver={Microsoft Access Driver (*.mdb)};D" _
), Array( _
"riverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=" _
), Array("admin;UserCommitSync=Yes;")), Destination:=Range("A1"))
.Sql = Array( _
"SELECT Adressen.ID, Adressen.Name, Adressen.Nachname, Adressen.Adresse" & Chr(13) & "" & Chr(10) & "FROM `G:Verzeichnisdb1`.Adressen Adressen" _
)
'###### hinter dem From die Datenquelle ohne .mdb
'# nun fragen wir ab, welche Auswahl du getroffen hast und schreiben diesen nach Auswahl
dim i as integer
dim auswahl as string
For GCnt=1 to 5
If Formular.Auswahlbox.Selected(i) = True Then
auswahl = Formular.Auswahlbox.List(i, 0)
end if
next
' so nun ein Hilfskonstrukt, wir lassen uns alles ausgeben und schauen nach wo deine auswahl steht
' haben wir diese gefunden, so lassen wir uns den Datensatz ausgeben
for i=1 to 5 ' Anzahl der Felder
if Cells(i,1).Value = auswahl
then
Formular.Textfeld = Cells(i,1) + "; " + Cells(i,2) + "; " + Cells(i,3) + "; " + Cells(i,4)
end if next
'# keine Fehlerabfragen und so implementiert, dass ist Schnickschnack für später.
(Sorry aber in dieser Box kann man keinen Quelltext schicken )
Aber wir sind dem Ergebnis schon ganz nahe !
H. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevISDN 1.0 
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) sevOutBar 4.0 
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|