Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1584to1588
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
Userform - Zusätzl. noch ComboBoxen einbauen
26.10.2017 09:22:44
Andy
Hallo alle zusammen
ich habe folgenden "Teilcode", der Teil eines Userforms mit Listbox darstellt. Ich möchte in diesen Bereich noch 6 Comboboxen einbauen. Wie kann ich dies am einfachsten bewerkstelligen, ohne dass es viel Programmieraufwand wird.
Vielen Dank Euch allen.....
Private Sub EINTRAG_LADEN_UND_ANZEIGEN()
Dim lZeile As Long
Dim i As Integer
'Eingabefelder resetten
For i = 1 To iCONST_ANZAHL_EINGABEFELDER
Me.Controls("TextBox" & i) = ""
Next i
'Nur wenn ein Eintrag selektiert/markiert ist
If ListBox1.ListIndex >= 0 Then
'Die Zeilennummer des Datensatzes steht in der ersten ausgeblendeten Spalte der Liste,
'somit können wir direkt zugreifen.
lZeile = ListBox1.List(ListBox1.ListIndex, 0)
For i = 1 To iCONST_ANZAHL_EINGABEFELDER
Me.Controls("TextBox" & i) = Tabelle1.Cells(lZeile, i).Text
Next i
For i = 1 To 16
Controls("Checkbox" & CStr(i)).Value = Cells(lZeile, i + 18).Value = "Ja" ' ###NEU## _
_
Next
End If
End Sub

Private Sub EINTRAG_SPEICHERN()
Dim lZeile As Long
Dim i As Integer
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = ListBox1.List(ListBox1.ListIndex, 0)
For i = 1 To iCONST_ANZAHL_EINGABEFELDER
Tabelle1.Cells(lZeile, i) = Me.Controls("TextBox" & i)
Next i
For i = 1 To 16
Cells(lZeile, i + 18).Value = IIf(Controls("Checkbox" & CStr(i)).Value, "Ja", "Nein") '  _
_
###NEU###
Next
'Der Benutzer könnte die angezeigten Werte in der Liste geändert haben,
'daher aktualisieren wir den ausgewählten Eintrag entsprechend.
ListBox1.List(ListBox1.ListIndex, 1) = TextBox1
ListBox1.List(ListBox1.ListIndex, 2) = Textbox2
ListBox1.List(ListBox1.ListIndex, 3) = TextBox3
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform - Zusätzl. noch ComboBoxen einbauen
26.10.2017 11:24:43
Nepumuk
Hallo Andy,
ich hoffe, ich habe mich nicht verzählt:
Private Sub EINTRAG_LADEN_UND_ANZEIGEN()
    Dim lZeile As Long
    Dim i As Integer
    
    'Eingabefelder resetten
    For i = 1 To iCONST_ANZAHL_EINGABEFELDER
        Me.Controls("TextBox" & i) = ""
    Next i
    
    'Nur wenn ein Eintrag selektiert/markiert ist
    If ListBox1.ListIndex >= 0 Then
        
        'Die Zeilennummer des Datensatzes steht in der ersten ausgeblendeten Spalte der Liste,
        'somit können wir direkt zugreifen.
        lZeile = ListBox1.List(ListBox1.ListIndex, 0)
        
        For i = 1 To iCONST_ANZAHL_EINGABEFELDER
            Me.Controls("TextBox" & i) = Tabelle1.Cells(lZeile, i).Text
        Next i
        
        For i = 1 To 16
            Controls("Checkbox" & CStr(i)).Value = Cells(lZeile, i + 18).Value = "Ja"
        Next
        
        For i = 1 To 6
            Controls("ComboBox" & CStr(i)).Text = Cells(lZeile, i + 35).Value
        Next
        
    End If
    
End Sub

Private Sub EINTRAG_SPEICHERN()
    Dim lZeile As Long
    Dim i As Integer
    
    'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
    If ListBox1.ListIndex = -1 Then Exit Sub
    
    'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
    lZeile = ListBox1.List(ListBox1.ListIndex, 0)
    
    For i = 1 To iCONST_ANZAHL_EINGABEFELDER
        Tabelle1.Cells(lZeile, i) = Me.Controls("TextBox" & i)
    Next i
    
    For i = 1 To 16
        Cells(lZeile, i + 18).Value = IIf(Controls("Checkbox" & CStr(i)).Value, "Ja", "Nein")
    Next
    
    For i = 1 To 6
        Cells(lZeile, i + 35).Value = Controls("ComboBox" & CStr(i)).Text
    Next
    
    'Der Benutzer könnte die angezeigten Werte in der Liste geändert haben,
    'daher aktualisieren wir den ausgewählten Eintrag entsprechend.
    ListBox1.List(ListBox1.ListIndex, 1) = TextBox1
    ListBox1.List(ListBox1.ListIndex, 2) = Textbox2
    ListBox1.List(ListBox1.ListIndex, 3) = TextBox3
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Userform - Zusätzl. noch ComboBoxen einbauen
26.10.2017 11:37:55
Andy
Du bist spitze !!!!
Danke dir recht herzlich !!!

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige