Commander_COM Geschrieben 3. September 2002 Teilen Geschrieben 3. September 2002 Hallo, weiß jemand, wie man ein Kombobox mit Werten über VBA unter Access 2000 füllen kann? darüber mache ich mir jetzt schon seit Freitag nen riesen birne aber mir fällt einfach nichts ein. Das genaue Problem ist, dass ich Zahlen in einem VBA-Array gespeichert habe, und nun eine Kombobox haben möchte, die werte aus einer tabelle in sich trägt, die im Zusammenhang mit diesem Array stehen. Mir fällt einfach nichts ein! :confused: Weiß jemand Rat? Danke. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Meenzer Geschrieben 3. September 2002 Teilen Geschrieben 3. September 2002 HI! Also normalerweise kannst Du so per VBA eine Combobox füllen: DeineCombobox.RowSource = "SELECT FELDER FROM TABELLE" Wenn Du nur bestimmte DS in der CBox haben willst , kannst Du dies in der WHERE - Klausel Deines SQL reinsschreiben. ZB ..... WHERE FELD = DEINARRAY(0) Ich hoffe, es hilft Dir weiter. Gruss Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Commander_COM Geschrieben 3. September 2002 Autor Teilen Geschrieben 3. September 2002 danke! Damit ist ein Meilenstein geschafft. Oh mann, du weißt gar nicht, wie mir ein Stein vom Herzen fällt. Super. Hat auch sofort funktioniert. Tausend Dank! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Commander_COM Geschrieben 3. September 2002 Autor Teilen Geschrieben 3. September 2002 Und wie leere ich das Teil wieder? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Commander_COM Geschrieben 3. September 2002 Autor Teilen Geschrieben 3. September 2002 das problem ist nicht, wie ich gerade herausgefunden habe, dass er das kombofeld nicht mehr löscht, sondern er schreibt ALLE einträge aus dem SQL-Abfrage in die Kombobox. Das soll er aber nicht. Ich hatte mir das so gedacht: --------------------------------------- dim os,ds,gs as String os = " or " ds = " ben_nr= " gs = " ben_nr= " For i = 1 To (zz - 1) 'bauen eines string für die abteilungsanzeige mit mehreren mitarbeitern gs = gs & z(i) If i <> zz Then gs = gs & os & ds End If Next i gs = gs & z(i) [Form_Aufgaben-Bereich2].Problem_box.RowSource = "Select Stichwort from text_tabelle where '&gs&'" -------------------------------------- Ich frage zuerst ab, welche mitarbeiter einer abteilung texteinträge in die tabelle "Text_tabelle" gemacht haben. Diese mitarbeiternummern speichere ich in dem array z also in z(1) die erste nr., in z(2) die 2. usw. zz ist die gesamtanzahl der mitarbeiter einer abteilung Dann baue ich mir mit der string-for-next-schleife da oben eine sqlabfrage, die dann die entsprechenden mitarbeiternnummern als where klausel mit in die abfrage einbindet. Das mit dem gs-string(steht für gesamt-string) funktioniert auch: bei einem mitarbeiter allein steht dann da: gs="ben_nr = 1" z.B. bei mehreren dann: gs="ben_nr=1 or ben_nr=2" Leider schreibt er mir dann trotz allem, ALLE texteinträge in die KOmbobox. Das darf doch nicht sein?! fügt man die beiden Strings, also den sql-string und den gs-String zusammen, müsste doch eine gültige sql-abfrage entstehen, die die einträge der kombobox dann auf den/die entsprechenden mitarbeiter begrenzt. Mehr dürfte dann da net drinstehen. Weiß noch jemand Rat? Ich brauch das ganz dringend, davon hängt meine berufliche Zukunft ab, wenn ich diese Datenbank gut hinbekomme, so wird mir eine Weiterbeschäftigung garantiert, Zeitlimit liegt allerdings bei zwei Wochen! Ich bin also für jede Hilfe mehr als dankbar! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Commander_COM Geschrieben 3. September 2002 Autor Teilen Geschrieben 3. September 2002 Irgendwann kommt man selber drauf, aber irgendwie ich immer nur dann, wenn ich alles haargenau hier erklärt habe. dann merkt man erst seinen Fehler. Also hier für alle die da draussen, die mal das selbe Problem haben: Dim rest_sql As String Dim ges_str As String rest_sql = "Select Stichwort from text_tabelle " ges_str = rest_sql & gs 'hier wird der finale sql_string gebildet [Form_Aufgaben-Bereich2].Problem_box.RowSource = ges_st Access mag es nicht in sql klauseln, wenn da noch ein string hintendrangepackt wird. Also einfach einen String bauen, der die gesamte anweisung mit den geschleiften string von oben in sich hat und schon gehts. Komisch. Auf steinigen Wegen lernt man am besten. Tausend Dank erstmal an alle, die sich meinetwegen hier noch nen Kopf gemacht haben. DANKE. :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tauron Geschrieben 3. September 2002 Teilen Geschrieben 3. September 2002 Original geschrieben von Commander_COM [Form_Aufgaben-Bereich2].Problem_box.RowSource = "Select Stichwort from text_tabelle where '&gs&'" probier mal den String direkt dranzuhängen, also beispielsweise so: [Form_Aufgaben-Bereich2].Problem_box.RowSource = "Select Stichwort from text_tabelle where " & gs sonst packt er, denk ich die ganzen Abhängigkeiten in Hochkomma und sieht die als einen String... Hoffe das hilt Dir ! [Edit: da war er doch schneller ] gruß Christian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.