Hilfe bei einem Code
01.06.2013 08:22:51
Frank
Ich nutze folgenden Code:
Private Sub CommandButton1_Click()
'Eintragen
Dim wks As Worksheet
Dim Datum1 As Date, Datum2 As Date
Dim Zeile1 As Long, Zeile2 As Long
Set wks = Worksheets(1) 'Tabelle in die eingetragen wird - Name anpassen!!!
With wks
'Datum aus Textbox1 einlesen
If IsDate(Me.TextBox1) Then
Datum1 = CDate(Me.TextBox1.Text)
Else
MsgBox "Kein Datum in Textbox1"
GoTo Beenden
End If
'Zeile mit Datum in Textbox 1 suchen
For Zeile1 = 2 To .Cells(.Rows.Count, 81).End(xlUp).Row
If IsDate(.Cells(Zeile1, 81)) Then
If .Cells(Zeile1, 81).Value = Datum1 Then
'Werte in Textboxen 9 bis 12 in Spalte 77 eintragen
For Zeile2 = 0 To 3
If Me.Controls("Textbox" & Format(9 + Zeile2, "0")) = "" Then
.Cells(Zeile1, 97).Offset(Zeile2, 0).Value = ""
Else
.Cells(Zeile1, 97).Offset(Zeile2, 0).Value = Me.Controls("Textbox" & Format(9 + _
Zeile2, "0")).Value
End If
Next
Exit For
End If
End If
Next
'Datum aus Textbox13 einlesen
If IsDate(Me.TextBox13) Then
Datum2 = CDate(Me.TextBox13.Text)
Me.TextBox13.Text = Format(Datum2, "DD.MM.YYYY")
If Datum2 >= Datum1 + 4 Then
'Zeile mit Datum in Textbox 13 suchen
For Zeile2 = Zeile1 To .Cells(.Rows.Count, 81).End(xlUp).Row
If IsDate(.Cells(Zeile1, 81)) Then
If .Cells(Zeile2, 81).Value = Datum2 Then
Exit For
End If
End If
Next
.Range(.Cells(Zeile1, 97), .Cells(Zeile1 + 3, 97)).AutoFill _
Destination:=.Range(.Cells(Zeile1, 97), .Cells(Zeile2, 97)), _
Type:=xlFillCopy
Else
MsgBox "Datum in Textbox13 weniger als 4 Tage größer als Textbox1 - kein Autofill"
End If
Else
MsgBox "Kein Datum in Textbox13 - kein Autofill"
End If
End With
Beenden:
End Sub
Die Werte aus den TextBoxen 9-12 werden auch in die Tabelle geschrieben.
Nun meine Frage:
Wie muss ich das Stück ändern, das dann mit den Werten gerechnet wird.
Me.Controls("Textbox" & Format(9 + Zeile2, "0")).Value
Danke!
Gruß Frank H.