PDA

Vollständige Version anzeigen : Listbox mit mehreren txtBoxen verbinden


Tadi
03.09.2001, 15:36
Hallo !!!

Ich habe meine ListBox mit Daten aus eine Exceltabelle verknüpft, so das in der ListBox nur Zeilen aus der Spalte „Firmenname“ zu sehen sind . Rechts daneben sollen zwei oder auch mehr TextBoxen (txtFirmenname, txtAdresse usw.) mit Inhalten aus der ListBox gefüllt werden. Je nach dem was mann in den ListBox für Zeile angeklickt hat. Das erste „txtFirmenneme“ habe ich hingekrigt über ControlSource aus dem ListBox. Frage?
Wie verknöpfe ich das zweite txtBox so das da die dazughörige Adresse steht?

mfg

<font size="1" face="Century Gothic">Moderatorenanmerkung: die Überarbeitung dieses Beitrages ist im Zuge der Arbeiten zu sehen, die durch den Wechsel der Forensoftware zum 01.01.2003 verursacht wurden.

Es wurden in diesem Beitrag Links korrigiert, die auf falsche Adressen zeigten und die Signatur angepasst...</font>

Stema
04.09.2001, 12:23
Hallo Thaddäus,

setze in die Listbox alle Spalten, die Du benötigst. Die Breite der einzelnen Spalten kannst Du - wenn sie nicht agezeigt werden sollen - auf 0 cm einstellen.
Dann setze in das AfterUpdate der Listbox folgendes: (hab ich aber nicht ausprobiert)

txtFirmenname = DeineListbox.Column(0)
txtAdresse = DeineListbox.Column(1)
etc.

Die 1. Spalte ist Column(0)

Tadi
04.09.2001, 12:57
Hallo Stema,

ich bin begeistert!!!

Funktioniert perfeckt!

Jezt möchte ich auch die Einträge die in dem txtBoxs zu sehen sind nach Bedarf verändern und dann zurück in die Tabelle speichern.

Hoffentlich bin ich nicht unverschämt?

Stema
04.09.2001, 15:24
Hallo Thaddäus,

mit folgendem Code funktioniert es:
Private Sub ListBox1_Click()
On Error Resume Next
TextBox1 = ListBox1.Column(0)
TextBox2 = ListBox1.Column(1)
TextBox3 = ListBox1.Column(2)
End Sub

Private Sub TextBox1_Change()
ActiveSheet.Cells(ListBox1.ListIndex + 1, 1) = TextBox1
End Sub

Private Sub TextBox2_Change()
ActiveSheet.Cells(ListBox1.ListIndex + 1, 2) = TextBox2
End Sub

Private Sub TextBox3_Change()
ActiveSheet.Cells(ListBox1.ListIndex + 1, 3) = TextBox3
End Sub


Die Werte in ActiveSheet.Cells(x,y) mußt Du natürlich an Deine Tabelle angleichen.

Tadi
05.09.2001, 14:52
Hallo Stema,

es hat schon wieder "Super" fuktioniert!!!

Vielen Dank

Tadi
05.09.2001, 15:01
Hallo Stema,

ich bin wieder da!

Frage: Wie kann ich per Code die erste Zeile im ListBox anklicken? Weil erst dann werden die Textfelder mit Daten gefüllt?

Gruß Thaddäus

Stema
05.09.2001, 15:23
Hallo Thaddäus.

If ListBox1.ListIndex = -1 Then ListBox1.ListIndex = 0