Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema ListBox
BildScreenshot zu ListBox ListBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Listbox fuellen mit Wert entsprechend Markierung


Betrifft: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 10:43:22

Hallo,

ich habe für bestimmte Bereiche Namen vergeben.

Es handelt sich immer um 3 Spalten auf einer Tabelle.

Mittels Application.Goto Reference:=TextBox1 wähle ich einen bestimmten Bereich aus.

Dieser Bereich soll nun in ein Listbox angezeigt werden bzw. noch besser dieser Bereich soll je Spalte auf 3 ListBoxes aufgeteilt und angezeigt werden.

Könnt ihr mir bitte hierbei helfen. Meine bisherige Suche im Archiv war leider erfolg-los.

Besten Dank

Gruss
Peter

  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Oberschlumpf
Geschrieben am: 23.09.2019 13:45:22

Hi Peter,

zeig mal bitte per Upload deine Datei, wie du sie bis jetzt hast.
Denn wie sollen wir helfen, wenn wir gar nicht wissen, welche Zellen du benutzt?

Die Originaldaten kannst du ja gegen Bsp-Daten austauschen.

Ciao
Thorsten


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 14:56:08

Hallo Thorsten,

die Orginaldatei ist viel zu gross. Diese kann nicht übersandt werden.

Gehe einfach davon aus, dass es sich um die Spalten z.B. E1 bis G201 handelt.
Dementsprechend müssten dann Variable eingebaut werden.

Was mich sehr stört ist, dass ich das keine Nachricht per E-Mail erhalte, obwohl ich die aktiviert habe. Was kann man hier machen?

Gruss
Peter


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Werner
Geschrieben am: 23.09.2019 13:55:22

Hallo Peter,

meinst du so:

Private Sub CommandButton1_Click()
If Me.TextBox1 <> "" Then
    Me.ListBox1.List = Range(Me.TextBox1).Columns(1).Value
    Me.ListBox2.List = Range(Me.TextBox1).Columns(2).Value
    Me.ListBox3.List = Range(Me.TextBox1).Columns(3).Value
End If
End Sub
Gruß Werner


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 15:04:24

Hallo Werner,

besten Dank für Deine Hilfe.

Es funktioniert einwandfrei. Jetzt werde ich noch eine Variable einbauen. Da sich die Columns(variable) je nach Auswahl ändert.

Kannst Du mir sagen was mit dem Excel-Forum los ist. Ich kreuze an, dass ich per EMail benachrichtigt werden soll, sobald eine Antwort vorhanden ist. Die funktioniert aber seit Tagen nicht mehr.

Gruss
Peter


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Werner
Geschrieben am: 23.09.2019 15:15:36

Hallo Peter,

erst mal Danke für die Rückmeldung.

Zu deiner Frage:
Kann ich dir nicht sagen, da ich die E-Mail Benachrichtigung selbst nicht nutze und von daher auch nicht sagen kann, ob sie funktioniert oder nicht.

Gruß Werner


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 15:55:02

Hallo Werner,

über den Commandbutton funktioniert das Befüllen der Listboxes.

Mit den Variablen klappt es jedoch nicht.

Spalte1 = 5 'BeginnSpalteA
Spalte2 = 6 'BeginnASp2
Spalte3 = 7 'BeginnSpalteE


'Anfang ListBoxes füllen
With Worksheets("Worddaten")
If Me.TextBox1 <> "" Then
Me.ListBox3.List = Range(Me.TextBox1).Columns(Spalte1).Value
Me.ListBox4.List = Range(Me.TextBox1).Columns(Spalte2).Value
Me.ListBox5.List = Range(Me.TextBox1).Columns(Spalte3).Value
End If
End With
'Ende ListBoxes füllen

Ergibt Laufzeitfehler 1004

Was muss ich bitte ändern?

Wie Kann ich erreichen, dass die Spalte von 2 bis 201 gefüllt wird und wenn in Celle Währung dann in Listbox = Währung mit € Zeichen.

besten Dank

Gruss
Peter


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Werner
Geschrieben am: 23.09.2019 16:35:50

Hallo Peter,

was bitte willst du hiermit erreichen?

Spalte1 = 5 'BeginnSpalteA
Spalte2 = 6 'BeginnASp2
Spalte3 = 7 'BeginnSpalteE

Deinen Angaben zufolge ist das, was du in der TextBox1 eingibst jeweils ein benannter Bereich, der aus drei Spalten besteht.
Der benannte Bereich hat drei Spalten. Egal wo der Bereich beginnt (z.B. ist der Bereich namens "Peter" der Bereich O1:Q20) sprichst du dessen erste Spalte über Columns(1) an, die zweite Spalte über Columns(2) und die dritte Spalte über Columns(3).
Der Fehler kommt halt einfach davon, dass der benannte Bereich aus TextBox1 keine Spalte 5, 6 bzw. 7 hat.
Private Sub CommandButton1_Click()
Dim i As Long

On Error GoTo Ausgang
If Me.TextBox1 <> "" Then
    Me.ListBox3.Clear
    Me.ListBox4.Clear
    Me.ListBox5.Clear
    For i = 1 To 3
        For Each raZelle In Range(Me.TextBox1).Columns(i).Cells
            Me.Controls("Listbox" & i + 2).AddItem raZelle.Text
        Next raZelle
    Next i
End If
Exit Sub

Ausgang:
On Error GoTo 0
MsgBox "Es gibt keinen Bereich " & Me.TextBox1
End Sub
Gruß Werner


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 17:09:32

Hallo Werner,

besten Dank. Leider ist raZelle nicht deklariert.

Gruss
Peter


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Werner
Geschrieben am: 23.09.2019 17:10:25

Hallo Peter,

dann mach das halt:

Dim raZelle as Range

Gruß Werner


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 24.09.2019 15:56:40

Hallo Werner,

leider benötige ich nochmals Deine Hilfe.

das mit dem Befüllen der 3 Listboxes funktioniert einwandfrei.

Woran ich momentan jedoch scheitere ist, wie behandle ich die Daten bei ListBox_Click?

Ich habe da für die ListBox1 nachstehenden Code:


<pre>Private Sub CommandButton5_Click()
Dim objDocument As Object 'benötigt für Word
Dim strPath As String


If Me.ListBox1.ListIndex = -1 Then
Label7.Caption = "Es wurde kein Eintrag in Listbox1 gewählt"
Exit Sub
Else

'Anfang Auswahl kopieren in ListBox1
With Range("Worddaten!A2:A65536")
Me.Tag = "1"
.Cells(ListBox1.ListIndex + 1, 1).Copy
Me.Tag = ""
End With
'Ende Auswahl kopieren in ListBox1

If Me.TextBox2 = "" Then
Label7.Caption = "Bitte Worddatei auswählen"
Exit Sub
Else
strPath = Me.TextBox2
End If

' Set objDocument = GetObject(PathName:="C:\Users\Peter\Desktop\TestVereinEhemaliger_2019_09_23\Brief01.docm") 'ohne Variable
Set objDocument = GetObject(PathName:=strPath) 'mit Variable aus TextBox2

objDocument.Application.Run "Inhalte_einfuegen" 'führt ein Makro in diesem Dokument aus


Set objDocument = Nothing

Application.CutCopyMode = False

Me.ListBox1 = ""

End If
End Sub</pre>


Wenn ich die ListBox3 in einer Zeile anklicke, dann soll der Wert in der Spalte1 des gewählten Bereichs kopiert werden. Analog Spalte 2 in ListBox4 und Spalte 3 in ListBox5.

Besten Dank für Deine Hilfe.

Gruss
Peter


  

Betrifft: AW: Listbox fuellen mit Wert entsprechend Markierung von: Peter
Geschrieben am: 23.09.2019 17:10:51

Hallo Werner,

hat sich erledigt - raZelle as Range

Gruss
Peter


Beiträge aus dem Excel-Forum zum Thema "Listbox fuellen mit Wert entsprechend Markierung"