ich bin ein absoluter Neuling in Sachen VBA.
Seit Tagen such ich in diesem Forum nach Hilfestellungen - habe auch viel gefunden.
Jetzt sitze ich aber an einer Stelle die ich nicht lösen kann - bestimmt ist diese Problem hier im Forum schon gelöst worden jedoch nicht exact und abändern bringt mir nur Fehlermeldungen.
Ausserdem würde ich gerne verstehen was ich anwende um nicht gleich nochmal fragen zu müssen :)
Zum Problem:
Ich habe eine UserForm erstellt welche mehrere Textboxen sowie eine ComboBox und OptionButtons enthält. Die ComboBox konnte ich dank des Forums auch gut erstellen und die gewünschten Daten tauchen auf. Die Textfelder können geleert werden und geben eine MsgBox aus wenn Fehlerhafte Einträge eingefügt werden.
1. Mein größtes Problem an dieser Stelle ist - ich möchte das die Daten - welche ich in die verschiedenen Textboxen (4 insgesamt) eingebe per commandbutton in meine Excel tabelle übertragen werden.
Es muss aber geprüft werden ob ein Eintrag vorhanden ist - ist dem so dann muss die Zelle darunter beschrieben werden. Zusätzliche Frage: Ist es möglich die Daten an 2 Unterschiedliche Stellen schreiben zu lassen (auf unterschiedlichen Tabellenblättern) ?
Leider schaffe ich es nicht diese Abfolge zu erstellen.
2. Ich habe 3 OptionButtons
a. USD b. Euro und c. ohne - ich möchte das beim benutzen des Commandbuttons der Wert auch an eine bestimmte Stelle in der Tabelle eingefügt wird. D.h. wenn Euro aktiviert wurde soll Euro in die Tabelle übernommen werden.
Das sind erstmal die (meine) größten Probleme.
Da ich, wie gesagt, keine Ahnung von VBA habe kann ich mir auch nicht wirklich was zusammen reimen.
Hier mal der Code von meinem Projekt - geht bestimmt auch schöner ;)
Private Sub CommandButton1_Click()
TextBox1.SetFocus
If TextBox1 = "" Then
MsgBox ("Bitte Part Nummer eingeben!")
Else
If TextBox2 = "" Then
MsgBox ("Bitte Zielpreis eingeben oder kein target anklicken!")
Else
If TextBox3 = "" Then
MsgBox ("Bitte Stückzahl eingeben")
Else
If TextBox4 = "" Then
MsgBox ("Bitte Liefertermin eintragen")
End If
End If
End If
End If
End Sub
Private Sub CommandButton2_Click()
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
End Sub
Private Sub CommandButton3_Click()
UserForm2.Hide
UserForm1.Show
End Sub
Private Sub OptionButton1_Click()
If TextBox2 = "kein target" Then
TextBox2 = ""
Else
End If
End Sub
Private Sub OptionButton2_Click()
If TextBox2 = "kein target" Then
TextBox2 = ""
Else
End If
End Sub
Private Sub OptionButton3_Click()
If TextBox2 = "" Then
TextBox2 = "kein target"
Else: MsgBox ("Durch anklicken wird das eingegebene target entfernt!")
TextBox2 = "kein target"
End If
End Sub
Private Sub SpinButton1_Change()
TextBox5.Value = Format(SpinButton1.Value, "dd.mm.yyyy")
End Sub
Private Sub TextBox2_Change()
End Sub
Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim datum As Date
On Error Resume Next
If Not TextBox5.Value Like "*.*.?*" Then
MsgBox "Eingabe stellt kein Datum der Form 01.01.1999 dar"
TextBox5.Value = Format(SpinButton1.Value, "dd.mm.yyyy")
Exit Sub
End If
datum = CDate(TextBox5.Value)
If Err 0 Then
MsgBox "Falsche Datumsangabe: " & _
TextBox5.Value & " existiert nicht !!"
TextBox5.Value = Format(SpinButton1.Value, "dd.mm.yyyy")
Exit Sub
End If
SpinButton1.Value = CLng(datum)
TextBox5.Value = Format(TextBox5.Value, "mm.dd.yyyy")
End Sub
Private Sub UserForm_Initialize()
UserForm2.SpinButton1.Max = 401768
UserForm2.TextBox5.Value = Format(Now, "dd.mm.yyyy")
UserForm2.SpinButton1.Value = CLng(CDate(UserForm2.TextBox5.Value))
End Sub
Private Sub TextBox1_Change()
End Sub
Private Sub UserForm_Click()
End Sub
Ich hoffe es kann mir jemand helfen ... und ich hoffe ich verstehe dann auch ;)
Danke vorab
Gruß
Sven