AW: VBA: nächste Zeile
23.08.2004 16:11:58
Marcl
Falls sich unten stehenden Frage wegen der Punkte im Datumsformat darauf bezogen, in der Userform nur 6 Zahlen ein zu geben und dann macht Excel daraus Datum mit Punkten, dann nimm diesen Code:
Private Sub CommandButton1_Click()
Datum = TextBox1.Value
Columns("A:A").Select
Selection.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell = Datum
ActiveCell.Offset(0, 3).Select
ActiveCell.FormulaR1C1 = "=MID(RC[-3],1,2)"
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = "=MID(RC[-4],3,2)"
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = "=MID(RC[-5],5,2)"
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[-3],""."",RC[-2],""."",RC[-1])"
Selection.Copy
ActiveCell.Offset(0, -6).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.Offset(0, 3).ClearContents
ActiveCell.Offset(0, 4).ClearContents
ActiveCell.Offset(0, 5).ClearContents
ActiveCell.Offset(0, 6).ClearContents
Vorname = TextBox2.Text
Columns("B:B").Select
Selection.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell = Vorname
Nachname = TextBox3.Text
Columns("C:C").Select
Selection.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
ActiveCell = Nachname
Range("a1").Select
End Sub
Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
Gruß
Marcl