ich brauche Eure Hilfe!
Mit meiner Userform möchte ich mehrere Daten (Unternehmen, Umsatz, Maschinenanzahl,...) abfragen und diese dann in eine Tabelle übertragen. Ein Unternehmen kann selbstverständlich mehrere Maschinen führen. Damit das nächste Unternehmen in die richtige Zeile eingetragen wird, frage ich ab welche die nächste freie Zeile ist.
Manche Unternehmen führen 10 oder mehr (teilweise bis zu 200) Maschinen. Da ich nicht so viele TextBoxen einfügen kann, kann mittels Button die Eingabefelder bestätigen, löschen und neue Maschinen eingeben. Damit kann ich beliebig viele Maschinen in meine Tabelle eintragen.
Nun mein Problem: wenn ich die Textfelder wieder lösche um neue Maschinen einzutragen werden die nachfolgenden Einträge (logischerweise) in die nächste freie Zeile geschrieben. Sie sollten allerdings auf höhe des Unternehmensname stehen.
Es sollte beispielsweise wie folgt aussehen:
Unternehmensname B2
Maschinenanzahl C2
Maschinenhersteller D2:D35
Verbandsmitglied E2
Könnt ihr mir sagen wie ich es schaffe, dass nach dem Löschen meiner Eingabe und dem erneuten Eingeben von Daten die Nachfolgenden in der richtigen Zeile erscheinen?
Private Sub CommandButton1_Click() 'Übernehmen
Dim Datenblatt As Object 'Datenblatt als Objektvariable
Set Datenblatt = ThisWorkbook.Sheets("Fragebogen")
If Datenblatt.Range("B2").Value = Empty Then
leerzeile = 2
Else
leerzeile = Datenblatt.UsedRange.Rows.Count + 1
End If
With Datenblatt
Cells(leerzeile, 2).Value = TextBox1.Value
Cells(leerzeile, 3).Value = ComboBox1.Value
Cells(leerzeile, 4).Value = ComboBox2.Value
Cells(leerzeile, 5).Value = TextBox2.Value
Cells(leerzeile, 15).Value = ComboBox5.Value
Cells(leerzeile, 16).Value = ComboBox6.Value
Cells(leerzeile, 17).Value = TextBox29.Value
Cells(leerzeile, 18).Value = TextBox30.Value
Cells(leerzeile, 19).Value = TextBox31.Value
Cells(leerzeile, 6).Value = TextBox3.Value
Cells(leerzeile + 1, 6).Value = TextBox4.Value
Cells(leerzeile + 2, 6).Value = TextBox5.Value
Cells(leerzeile + 3, 6).Value = TextBox6.Value
Cells(leerzeile + 4, 6).Value = TextBox7.Value
Cells(leerzeile + 5, 6).Value = TextBox8.Value
Cells(leerzeile + 6, 6).Value = TextBox9.Value
Cells(leerzeile + 7, 6).Value = TextBox10.Value
Cells(leerzeile, 7).Value = ComboBox3.Value
Cells(leerzeile, 8).Value = TextBox11.Value
Cells(leerzeile + 1, 8).Value = TextBox12.Value
Cells(leerzeile + 2, 8).Value = TextBox13.Value
Cells(leerzeile, 9).Value = ComboBox4.Value
Cells(leerzeile, 10).Value = TextBox14.Value
Cells(leerzeile, 11).Value = TextBox15.Value
Cells(leerzeile, 12).Value = TextBox16.Value
Cells(leerzeile, 13).Value = TextBox17.Value
Cells(leerzeile, 14).Value = TextBox18.Value
Cells(leerzeile + 1, 10).Value = TextBox19.Value
Cells(leerzeile + 1, 11).Value = TextBox20.Value
Cells(leerzeile + 1, 12).Value = TextBox21.Value
Cells(leerzeile + 1, 13).Value = TextBox22.Value
Cells(leerzeile + 1, 14).Value = TextBox23.Value
Cells(leerzeile + 2, 10).Value = TextBox24.Value
Cells(leerzeile + 2, 11).Value = TextBox25.Value
Cells(leerzeile + 2, 12).Value = TextBox26.Value
Cells(leerzeile + 2, 13).Value = TextBox27.Value
Cells(leerzeile + 2, 14).Value = TextBox28.Value
End With
End Sub