Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Eingaben mehrerer Zellen in Textbox anzeigen
02.11.2017 15:20:26
Rouzbeh
Hallo zusammen,
das ist mein erster Beitrag hier. Ich habe eine Frage. Ich versuche eine Arbeitszeitsverfassung mit Hilfe von VBA zuschreiben bzw. zubasteln.
Es gibt eine Spalte in der Tabelle Kalender. Dort werden die Dienstnummer eingetragen. Mit Hilfe von Userform soll die Spalte kontrolliert werden und falls einen Dienst eingetragen wurde, soll er in einem TextBox in Userform angezeigt werden.
jetzt meine Frage ist:
Ich habe den folgenden code geschrieben aber die Dienste werden überschrieben und am Ende nur den letzten Dienst angezeigt.
Dim i As Long
For i = 8 To 38
If Sheets("Kalender").Cells(i,2) "" Then
TextBox3 = Sheets("Kalender").Range("B" & i)
End If
Next
Ich möchte dass die Dienstnummern alle untereinander angezeigt werden. kann jemand mir mit diesem Problem helfen?
Vielen Dank
Rouzbeh

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

Betreff
Datum
Anwender
Anzeige
AW: Eingaben mehrerer Zellen in Textbox anzeigen
02.11.2017 15:53:32
Peter(silie)
Hallo,
da ist eine Textbox nicht das richtige.
Für auflistungen solltest du Comboboxen oder Listboxen verwenden.
Hier eine kleine Beispielmappe: https://www.herber.de/bbs/user/117389.xlsm
(einfach die Userform starten)
Hier nur der Code:
Option Explicit
Option Base 1
Private Sub UserForm_Initialize()
Dim ws As Worksheet
Dim lRow, i As Long
Dim arr() As Variant
Set ws = ThisWorkbook.Sheets(1) 'Anpassen auf deine Tablle
With ws
lRow = .Cells(.Rows.Count, 2).End(xlUp).Row
ReDim arr(lRow)
For i = 1 To lRow
arr(i) = .Cells(i, 2).Value
Next i
End With
Me.ListBox1.List = arr
Me.ComboBox1.List = arr
Erase arr
End Sub

Anzeige
AW: Eingaben mehrerer Zellen in Textbox anzeigen
02.11.2017 15:55:13
Michael
Hallo!
Die MultiLine-Eigenschaft der TextBox muss auf "True" gesetzt sein.
Außerdem überschreibt Deine Schleife tatsächlich den TextBox-Text immer mit dem nächsten Wert. Besser Du sammelst alle Zellwerte in einem String (inkl. Zeilensprung als Trennzeichen) und übergibst dies dann gesamt dem TextBox-Text, schematisch:
    Dim i As Long, s As String
For i = 2 To 8
s = s & Cells(i, "A") & Chr(10)
Next i
UserForm1.TextBox1.Text = s
LG
Michael

359 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige