Userform
31.10.2003 00:09:22
Peter
ich habe mir durch wälzen in Büchern und nachfragen in Foren, folgendes Makro zusammengeschustert.
Über eine Userform füge ich Zeilen in eine Liste ein, wenn neue Zeilen gebraucht werden - und klappt auch (wunderte mich da ich noch nicht oft mit Userformen gearbeitet habe).
Ich möchte mir die Arbeit jetzt noch einfacher machen und die Userform erweitern.
Das Problem zu erklären, wird wohl nicht so ganz einfach sein ... ich versuche es mal so
Die Userform soll erweitert werden mit Textfeldern erweitert werden, wo folgende Angaben gemacht werden (ich vermute mal das es mit Textfeldern gemacht wird ...)
In einen Textfeld soll eine Zugnr. (5 Zahlen) stehen
Und in den beiden anderen Textfeldern soll ein Datum stehen (Format 31.10)
Es wäre jetzt gut, wenn in Spalte B (Zugnr.) in allen eingefügten Zeilen der Wert aus der Userform übernommen wird
in Spalte C das erste Datum
in Spalte F das zweite Datum
genauso übernehmen.
Private Sub CommandButton1_Click()
ActiveSheet.Unprotect Password:="test"
ActiveSheet.EnableAutoFilter = True
ActiveWindow.LargeScroll Down:=-20
Range("A5").Select
Dim Zeile As Long, Spalte As Integer
Dim InsertRows As Long, i As Long
Zeile = 7
Do
InsertRows = Application.InputBox("Wieviele Wagen hat der Zug ?", Type:=1)
If InsertRows > 50 Then MsgBox "wie Lang und wie Schwer soll der Zug denn sein ..."
Loop Until InsertRows <= 50
For i = 1 To InsertRows
Rows(6).EntireRow.Hidden = False
Range("A6").Offset(i, 0).EntireRow.Insert Shift:=xlDown
Rows(6).EntireRow.Copy Range("A6").Offset(i, 0).EntireRow
For Spalte = 1 To 10
If Not Cells(Zeile - 1 + i, Spalte).HasFormula Then Cells(Zeile - 1 + i, Spalte) = ""
Next Spalte
Next i
Rows(6).EntireRow.Hidden = True
' Warum das ??? ActiveWindow.DisplayHeadings = True
ActiveSheet.Protect Password:="test", Contents:=True, userInterfaceOnly:=True
Unload Me
Range("A7").Select
End Sub
Ich hoffe ich habe es nicht zu umständlich erklärt ?!?
Gruß Peter