Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

macro erklärung

Forumthread: macro erklärung

macro erklärung
06.03.2015 20:56:35
Thomas
Hallo,
bin ein Neuling in Sachen VBA Hier werde ich von vielen lieben Leuten geholfen. Jedoch möchte ich ein wenig davon verstehen. Anbei ist ein kleiner Code der schreibt den Inhalt der Textboxen in die Zellen. So weit ist es klar. Ich habe an einigen stellen ein Fragezeichen gemacht und ich würde gern wissen was an diesen Stellen passiert. Schreibt mir bitte jemand daneben die Bedeutung? Wenn ich etwas falsches hingeschrieben habe kann das dann jemand berichtigen?
Wenn noch zeit ist könnte mir noch jemand eine schleife schreiben welche das gleiche macht. ( ist aber zweitrangig )
Das würde mir bei meinen ersten eigenen Gehversuchen riesig helfen.
Lieben lieben dank
Thomas
Private Sub CommandButton3_Click()
'neuen Datensatz anlegen
Dim letzte_Zeile As Long
Dim i%
For i = 1 To 16   ' Fehler unterdrücken wenn nichts ausgewählt ist, bedeutet textfeld 1 und  _
16 müssen ausgefüllt sein
Select Case i
Case 1, 16
If Me("TextBox" & i) = "" Then
MsgBox "ohne Name und Vorname geht nichts sorry!", , "Prüfung Mußeingaben"
Exit Sub
End If
End Select
Next i
If FindEintrag Then ' Doppelte ausschliessen
MsgBox "Der Name '" & Me.TextBox16.Value & " " & TextBox1 & "'ist schon vorhanden!"
Exit Sub
End If
With wksData
' Datensatz neu speichern
letzte_Zeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1   '''' ?
.Cells(letzte_Zeile, 1) = Application.WorksheetFunction.Max(.Columns(1)) + 1  ' suche  _
letzte zeile nimm eine darunter
.Cells(letzte_Zeile, 2) = TextBox1.Text ' schreibe von textbox1 den wert in spalte b
.Cells(letzte_Zeile, 3) = TextBox16.Text ' schreibe von textbox1 den wert in spalte c
.Cells(letzte_Zeile, 4) = TextBox2 ' schreibe von textbox1 den wert in spalte d
With .Cells(letzte_Zeile, 5)                  ' was passiert  von  hier?
If Me.TextBox3.Value = "" Then              ' was passiert  von  hier?
.ClearContents                             ' was passiert  von  hier?
ElseIf IsDate(Me.TextBox3.Value) Then          ' was passiert  von  hier?
.Value = CDate(Me.TextBox3.Text)              ' was passiert  von  hier?
Else
.Value = Me.TextBox3.Text                        ' was passiert  von  hier?
End If                                             ' was passiert  von  hier?
End With                                        ' was passiert  bis hier?
.Cells(letzte_Zeile, 6) = "'" & TextBox4.Text 'Schreibe von textbox4 in spalte F als  _
TextPLZ
.Cells(letzte_Zeile, 7) = TextBox5.Text
.Cells(letzte_Zeile, 8) = TextBox6.Text
.Cells(letzte_Zeile, 9) = TextBox7.Text
.Cells(letzte_Zeile, 10) = TextBox8.Text
.Cells(letzte_Zeile, 11) = "'" & TextBox9.Text 'Tel
.Cells(letzte_Zeile, 12) = "'" & TextBox10.Text 'Tel2
.Cells(letzte_Zeile, 13) = "'" & TextBox11.Text 'Tel3
.Cells(letzte_Zeile, 14) = "'" & TextBox12.Text 'Fax
.Cells(letzte_Zeile, 15) = TextBox13.Text
.Cells(letzte_Zeile, 16) = TextBox14.Text
.Cells(letzte_Zeile, 17) = TextBox15.Text
End With                                                    ' schreiben ist fertig
ClearAll                                                     'lösche alle textboxen
UserForm_Initialize                                          ' starte userform  neu ?
ComboBox1.SetFocus                                           ' ?
End Sub

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: macro erklärung
07.03.2015 02:07:54
mumpel
Hallo!
"letzte_Zeile" ermittelt die erste freie Zeile (Spalte A wird geprüft).
".Cells(letzte_Zeile, 5)" = erste freie Zeile Spalte E (Spalte 5).
"If/ElseIf/Else" = Wenn Textbox 3 leer dann ermittelte Zelle in Spalte 5 leeren, wenn Inhalt Textbox 3 ein Datum dann Inhalt der Textbox 3 als Datum in die Zelle der Spalte 5, sonst Inhalt der Textbox 3 in die Zelle der Spalte 5.
"ComboBox1.SetFocus" = Der "ComboBox1" den Fokus geben, also auswählen.
"UserForm_Initialize" = Userform wird neu initalisiert, also die Inhalte neu geladen.
Gruß, René

Anzeige
AW: macro erklärung
07.03.2015 14:35:59
Thomas
Hallo Rene,
besten dank für die Erklärung. Damit komme ich weiter.
Es ist als Leihe schwierig das mit Google zu übersetzen. Nun kann ich den Code ein wenig anpassen.
Lieben Dank Thomas

AW: macro erklärung
07.03.2015 16:10:34
mumpel
Vergiss den Google-Translator, frag uns. ;-)

Tja, mit Translator in Ausleihe... ;-) Gruß owT
07.03.2015 16:45:29
Luc:-?
:-?
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige