WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   VBA/Access: mehrere Abfragen in ein Listfeld (http://www.wcm.at/forum/showthread.php?t=86947)

BigNfan 05.02.2003 12:40

danke

ich denke schon :)


meld mich eben wieder wenns ned funkt :D

BigNfan 05.02.2003 20:34

hi
danke das funktioniert
nur wie aktualisiere ich das listfeld?
früher gings mit renew ... nur das kennt er nicht mehr :rolleyes:
(aja - wir proggen mit ado (extras - verweise))

nächste frage wäre wie ich das dann wieder auslese
weil wenn ich auf ok klicke soll er speichern ob es verliehen/zurückgegeben/verkauft wurde..


danke

aja, kannst natürli a mailen => ntsc-j@chello.at

:)

chrisne 05.02.2003 20:49

Zitat:

Original geschrieben von BigNfan

nächste frage wäre wie ich das dann wieder auslese
weil wenn ich auf ok klicke soll er speichern ob es verliehen/zurückgegeben/verkauft wurde..

erkläre das einmal genauer.
was soll er, wie soll er und wann soll er, speichern.


gruss
chris

BigNfan 05.02.2003 20:54

wenn ich auf ok klicke soll er in einer tabelle speichern, dass er ausgeliehen hat (falls oben das gewählt wurde) oder ob es verkauft wurde oder zurückgebracht..

chrisne 05.02.2003 21:11

wie muss die tablle ausschauen, oder ist das egal ?

chris

BigNfan 05.02.2003 21:16

die tabellen sind alle schon vorhanden..
muss nur wissen welche titeln es sind, und der rest is ka prob mehr


muss nur wissen wie ich es auslese


und wie ich das listfeld aktualisiere, weil leider nichts drin steht..

Seidl 05.02.2003 21:20

Na da haben aber zwei ganz schön aneinander vorbei geredet :D

Eine Listbox kann man auf mehrere Arten befüllen. Man kann Werte aus einer Tabelle oder Abfrage nehmen (was BigNfan anscheinend ursprünglich gemacht hat), die Werte durch Semikola getrennt als RowSource angeben (das war Chrisnes Plan) und man kann sie auch über die Methode AddItem mit Werten befüllen.
Ein Requery, also ein erneutes einlesen der Werte ist natürlich nur im ersten Fall sinnvoll da in den beiden anderen Fällen die Werte ja ohnehin direkt in der Listbox abgelegt und damit immer aktuell bekannt sind.

Eine Möglichkeit wäre es das Listenfeld an ein ADO-Recordset zu binden und dem du die Datensätze zuerst hinzufügst um sie dann bei OK nacheinander in deine Tabelle zu schreiben.

Ich würde aber eher vorschlagen beim Starten der Auswahl für eine ADO-Connection auf die betreffende Datenbank eine TRANSAKTION zu starten (=BeginTrans), dann ein Recordset für die betreffende Tabelle zu öffnen, die Werte bei Auswahl in das Recordset zu schreiben (AddNew) und erst bei OK die Änderungen zu übernehmen (=CommitTrans). Wenn der Vorgang nicht mit OK bestätigt wird brichst du die Änderungen einfach ab (=RollbackTrans).

Alle Klarheiten beseitigt?
Na dann is' ja gut ;)

so long
Seidl

chrisne 05.02.2003 21:20

ich mache dir gerade ein demo. wenn du mir sagst, wie deine tabelle ausschaut, dann baue ich es dir im demo gleich so ein.

chris

BigNfan 05.02.2003 21:24

ich hab dir ne mail geschickt

dankeschön :)

chrisne 05.02.2003 21:24

Zitat:

Original geschrieben von Seidl

Eine Möglichkeit wäre es das Listenfeld an ein ADO-Recordset zu binden und dem du die Datensätze zuerst hinzufügst um sie dann bei OK nacheinander in deine Tabelle zu schreiben.

Ich würde aber eher vorschlagen beim Starten der Auswahl für eine ADO-Connection auf die betreffende Datenbank eine TRANSAKTION zu starten (=BeginTrans), dann ein Recordset für die betreffende Tabelle zu öffnen, die Werte bei Auswahl in das Recordset zu schreiben (AddNew) und erst bei OK die Änderungen zu übernehmen (=CommitTrans). Wenn der Vorgang nicht mit OK bestätigt wird brichst du die Änderungen einfach ab (=RollbackTrans).

viele wege gehen nach rom.
so wie es ausschaut hat bignfan nur "wenig" kenntnisse in access. darum sollte die lösung einfacher sein.
deine lösung ist zwar hübsch, aber meine meinung nicht einfach.
3 zeilen programm mit RowSource :)

chris


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:29 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag