Anzeige
Archiv - Navigation
1580to1584
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 Textboxen untereinander schreiben
17.09.2017 21:37:15
Vilson
Hallo zusammen
als ersten vielen HERZLICHEN DANK für eure Beiträge sowie für diesen Formum.
habe eine Frage und zwar:
Habe ein Userform mit je 18 TextBox und ComboBox.
Es wird nur die letzte Zeile der Tabelle beschrieben mit dem TextBox& ComoBox 18.
Vielen DANK für eure hilfe schon mal im Voraus
Gruss Vilson
Markro:
Private Sub cmd_OK_Click()
Dim wksuebertrag As Worksheet
Dim intLetzteZeile As Long
Set wksuebertrag = Worksheets("Daten")
With wksuebertrag
intLetzteZeile = wksuebertrag.Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(intLetzteZeile, 2).Value = cbo_Datum
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung
.Cells(intLetzteZeile, 3).Value = txt_Anzahl
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_2
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_2
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_3
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_3
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_4
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_4
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_5
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_5
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_6
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_6
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_7
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_8
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_9
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_9
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_10
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_10
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_11
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_11
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_12
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_12
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_13
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_13
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_14
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_14
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_15
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_15
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_16
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_16
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_17
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_17
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_18
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_18
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform Textboxen untereinander schreiben
17.09.2017 21:52:41
Gerd
Hallo,
guckst du nach "Controls" und "Schleifen". :-)
Private Sub cmd_OK_Click()
Dim wksuebertrag As Worksheet
Dim intLetzteZeile As Long
Set wksuebertrag = Worksheets("Daten")
With wksuebertrag
intLetzteZeile = wksuebertrag.Cells(Rows.Count, 2).End(xlUp).Row + 1
.Cells(intLetzteZeile, 2).Value = cbo_Datum
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_2
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_2
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_3
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_3
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_4
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_4
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_5
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_5
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_6
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_6
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_7
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_8
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_9
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_9
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_10
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_10
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_11
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_11
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_12
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_12
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_13
intzeile = intzeile + 1
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_13
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_14
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_14
intzeile = intzeile + 1
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_15
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_15
intzeile = intzeile + 1
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_16
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_16
intzeile = intzeile + 1
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_17
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_17
intzeile = intzeile + 1
.Cells(intLetzteZeile, 4).Value = cbo_Artikelbezeichnung_18
.Cells(intLetzteZeile, 3).Value = txt_Anzahl_18
End Sub

Gruß Gerd
Anzeige
AW: Userform Textboxen untereinander schreiben
18.09.2017 07:19:40
Vilson
Hallo Gerd
Vielen Herzlichen DANK!
Es funktioniert so wie ich mir gewünscht habe.
Die Variante vom Sepp gefällt mir besser, muss aber zuerst richtig verstehen.
Dein Vorschlag ist mir klarer.
Merci&Gruss
Vilson
AW: Userform Textboxen untereinander schreiben
17.09.2017 21:56:02
Sepp
Hallo Vilson,
klar, du schreibst ja immer in die selbe Zeile!
Benenne deine erste TextBox um in "txt_Anzahl_1" und die erste ComboBox in "cbo_Artikelbezeichnung_1", dann nimm diesen Code.
Private Sub cmd_OK_Click()
Dim wksuebertrag As Worksheet
Dim lngLastRow As Long, lngIndex As Long

Set wksuebertrag = Worksheets("Daten")

With wksuebertrag
  lngLastRow = .Cells(Rows.Count, 2).End(xlUp).Row
  For lngIndex = 1 To 18
    If Len(Trim(Me.Controls("txt_Anzahl_" & CStr(lngIndex)).Text)) Then
      .Cells(lngLastRow + lngIndex, 2).Value = cbo_Datum
      .Cells(lngLastRow + lngIndex, 3).Value = Me.Controls("txt_Anzahl_" & CStr(lngIndex)).Text
      .Cells(lngLastRow + lngIndex, 4).Value = Me.Controls("cbo_Artikelbezeichnung_" & CStr(lngIndex)).Text
    End If
  Next
End With
Set wksuebertrag = Nothing
End Sub

Gruß Sepp

Anzeige
AW: Userform Textboxen untereinander schreiben
18.09.2017 07:16:38
Vilson
Hallo Sepp
Vielen Herzlichen DANK!
Es funktioniert so wie ich mir gewünscht habe.
Merci&Gruss
Vilson

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige