Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listbox-Einträge Variablen zuweisen

Listbox-Einträge Variablen zuweisen
09.02.2004 13:11:11
Henrik
Hallo!
Ich habe eine Userform mit Listbox erstellt, in welcher ich Adressen eingeben kann und diese in einer .txt-Datei speichere. Die Einträge werden auch beim nächsten öffnen der Userform erkannt(auch die neuen Einträge) und aufgelistet, das klappt alles wunderbar. Die Listbox Einträge sehen folgendermaßen aus:
Familie ;Manfred Mustermann; Musterstraße 23a; 15848 Musterdorf
Firma ;Detlef Schmidt; Dorfstraße 21; 13288 Dummdorf
.
.
usw...
allgemein also:
Wert1 ;Wert2 ;Wert3 ;Wert4
Jetzt möchte ich Variablen diese Werte zuweisen:
an = Wert1
n = Wert2
ans = Wert3
ansc = Wert4
und zwar immer in Abhängigkeit des ausgewählten Eintrages!
Wenn also Eintrag 1 ausgewählt ist ,dann soll es so aussehen:
an = Familie
n = Manfred Mustermann
ans = Musterstraße 23a
ansc = 15848 Musterdorf
Zugreifen tu ich auf die Einträge folgenderweise:

Private Sub namen_Click() 'namen heisst meine Listbox
Select Case namen.Value
Case 0
an = ?
n = ?
ans = ?
ansc = ?
Case 1
an = ?
n = ?
ans = ?
ansc = ?
usw...
End Sub

Und die Ausgabe geht dann so:

Private Sub bestaetigt_Click() 'mein OK-Button
Form3.Hide 'meine Userform
Range("D10").Select
ActiveCell.FormulaR1C1 = an
Range("D11").Select
ActiveCell.FormulaR1C1 = n
Range("D12").Select
ActiveCell.FormulaR1C1 = ans
Range("D14").Select
ActiveCell.FormulaR1C1 = ansc
End Sub

Wie kann ich also die Werte den Variablen zuweisen, ich bräuchte den genauen Code!
Vielen Dank im Vorraus
Henrik

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox-Einträge Variablen zuweisen
09.02.2004 14:37:24
Ramses
Hallo
den Umweg über die Variablen kannst du dir sparen

Private Sub bestaetigt_Click() 'mein OK-Button
Range("D10") = Me.Listbox1.Column(0)
Range("D11") = Me.Listbox1.Column(1)
Range("D12") = Me.Listbox1.Column(2)
Range("D14") = Me.Listbox1.Column(3)
End Sub

Gruss Rainer
AW: Listbox-Einträge Variablen zuweisen
09.02.2004 14:54:21
Henrik
Danke Rainer, aber ich suchte nach was anderem und ich habs gerade selber rausgefunden
Juhhuuuuuu :-) Es geht wunderbar, auch wenn ich neue Einträge hinzufüge!!!
Falls es dich interessiert hab ich meinen gesamten Formularcode mal kopiert:

Public an As String
Public n As String
Public ans As String
Public ansc As String


Private Sub namen_Enter()
namen.ListIndex = namen.ListIndex + 1
namen.ListIndex = namen.ListIndex - 1
End Sub


Private Sub bestaetigt_Click()
Form3.Hide
Range("D10").Select
ActiveCell.FormulaR1C1 = an
Range("D11").Select
ActiveCell.FormulaR1C1 = n
Range("D12").Select
ActiveCell.FormulaR1C1 = ans
Range("D14").Select
ActiveCell.FormulaR1C1 = ansc
End Sub


Private Sub namen_Dblclick(ByVal Cancel As MSForms.ReturnBoolean)
SendKeys "{ENTER 2}", True
End Sub


Private Sub neuerempf_Click()
an = InputBox("Bitte geben Sie die Anrede ein ", "Text eingeben", "Familie")
n = InputBox("Bitte geben Sie Vorname u. Nachname ein ", "Text eingeben")
ans = InputBox("Bitte geben Sie Straße und Hausnummer ein ", "Text eingeben")
ansc = InputBox("Bitte geben Sie Postleitzahl und Wohnort ein ", "Text eingeben")
namen.AddItem an + " ;" + n + " ;" + ans + " ;" + ansc
bestaetigt.SetFocus
SendKeys "{ENTER}", True
'Speichern
Open "D:\Tischlerei Hertel Unterlagen\Namens-Archiv.txt" For Output As #1
For i = 0 To namen.ListCount - 1
Print #1, namen.List(i)
Next i
Close #1
End Sub


Private Sub UserForm_Initialize()
Dim s As String
Open "D:\Tischlerei Hertel Unterlagen\Namens-Archiv.txt" For Input As #1
While Not EOF(1)
Line Input #1, s
namen.AddItem s
Wend
Close #1
namen.BoundColumn = 0
namen.ListIndex = 0
End Sub


Private Sub namen_Click()
Dim meinstr As String
For i = 0 To namen.ListCount
Select Case namen.Value
Case i
meinstr = namen.Column(0, i)
zahl = InStr(1, meinstr, " ;")
an = Mid(meinstr, 1, zahl - 1)
zahl2 = InStr(zahl + 2, meinstr, " ;")
n = Mid(meinstr, zahl + 2, zahl2 - 2 - zahl)
zahl3 = InStr(zahl2 + 2, meinstr, " ;")
ans = Mid(meinstr, zahl2 + 2, zahl3 - zahl2 - 2)
ansc = Mid(meinstr, zahl3 + 2)
End Select
Next i
End Sub

MFG Henrik
Anzeige
Gratuliere. Geschlossen o.T.
09.02.2004 17:51:58
Ramses
...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige