Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1788to1792
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nummerierung einfügen

Nummerierung einfügen
08.11.2020 15:31:06
Peter
Hallo,
ich habe eine Exceldatei mit der ich mittels UserForm2 nach Auswahl von Tabelle2 ein Datum eintrage und dann sollen die Daten in die erste freie Zeile Spalten B, C, D übertragen werden.
Wenn ich z. B. bei Datum 03.09.2022 eingebe, dann wird die Tgb.-Nr. automatisch auf "4" gesetzt und mittels Button der Wert in die erste freie Zeile übertragen.
Das klappt einwandfrei. Mein Problem ist aber, dass dies auch dann klappen solle, wenn ich noch ein Datum einfügen möchte, das vor dem 01.08.2022 ist - z. B. 02.07.2022.
Es soll auch dann die Tgb.-Nr. 4 gesetzt werden.
Könnt ihr mir bitte hierbei behilflich sein.
Datei anbei: https://www.herber.de/bbs/user/141408.xlsm
Gruss
Peter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nummerierung einfügen
08.11.2020 19:33:42
onur
"wird die Tgb.-Nr. automatisch auf "4" gesetzt" - Und nur DU weisst, wie (warum - nach welchen Kriterien) diese 4 zustandekommt.
AW: Nummerierung einfügen
09.11.2020 06:02:06
Peter
Hallo Onur,
hierzu habe ich die Datei angehängt.
Im Code: "Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)" wird ab Zeile
'''Anfang nummerieren Spalte D
With ActiveSheet
....
die Nummerierung ausgeführt.
Mit diesem Code funktioniert die Eingabe einwandfrei, mit dem Jahres- bzw. Buchungsjahrwechsel.
Gruss
Peter
AW: Nummerierung einfügen
09.11.2020 06:34:00
onur
Glaubst du, ich will deinen Code analysieren, wenn du mir doch ganz einfach die Frage beantworten könntest ?
Sind wir hier auf Schnitzeljagd oder was?
Anzeige
AW: Nummerierung einfügen
09.11.2020 09:59:13
Peter
Hallo Onur,
ja, die "4" wird automatisch gesetzt. Und die mittels diesem Code in UserForm2:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Dim Zähler As Integer, Nummer As Integer
Dim lzB As Long
Dim gesDat As String
'Dim gesDatV As String
Dim ADatK As String  'Anfangdatum Kalenderjahr
Dim EDatK As String  'Enddatum Kalenderjahr
Dim ADatS As String  'Anfangdatum Schuljahr
Dim EDatS As String  'Enddatum Schuljahr
Dim tgbV As String  'benötigt für vorherige TgbNr
'Anfang Prüfung ob Datum leer bzw. ob richtiges Datum bzw. wenn falsch dann "bitte Datum  _
eintragen
If TextBox1.Text = "" Then
TextBox1 = "Bitte Datum eintragen"
Cancel = True
Me.TextBox1.SelStart = 0 'markiert den Text
Me.TextBox1.SelLength = Len(Me.TextBox1) 'markiert den Text
Exit Sub
ElseIf TextBox1.Text Like "##.##.####" Then 'Exit Sub
''MsgBox "TgbNr"
End If
'Ende Prüfung ob Datum leer bzw. ob richtiges Datum bzw. wenn falsch dann "bitte Datum  _
eintragen
'''Anfang nummerieren Spalte D
With ActiveSheet
'Anfang nummerieren Spalte D
lzB = Range("B65536").End(xlUp).Row
'        TextBox11 = TextBox1
'        TextBox12 = .Cells(lzB, 2)
gesDat = .Cells(lzB, 2)
'für Kalenderjahr
If Worksheets("Hilfstabelle").Range("C3") > "" Then
ADatK = CDate(Worksheets("Hilfstabelle").Range("G3")) 'Kalenderjahr
EDatK = CDate(Worksheets("Hilfstabelle").Range("H3")) 'Kalenderjahr
'i.O.
If gesDat = "Datum" And CDate(TextBox1) >= CDate(ADatK) And CDate(TextBox1)  "" And CDate(TextBox1) >= CDate(ADatK) And CDate(TextBox1) = CDate(ADatK) And CDate(TextBox2)  "" And CDate(TextBox1) >= CDate(ADatK) And CDate(TextBox1) = CDate(ADatK) And CDate(TextBox1)  "" Then
ADatS = CDate(Worksheets("Hilfstabelle").Range("G2")) 'Schuljahr
EDatS = CDate(Worksheets("Hilfstabelle").Range("H2")) 'Schuljahr
'i.O.
If gesDat = "Datum" And CDate(TextBox1) >= CDate(ADatS) And CDate(TextBox1)  "" And CDate(TextBox1) >= CDate(ADatS) And CDate(TextBox1) = CDate(ADatS) And CDate(TextBox1)  "" And CDate(TextBox1) >= CDate(ADatS) And CDate(TextBox1) = CDate(ADatS) And CDate(TextBox1)  "" And CDate(TextBox1)  CDate(ADatS) And CDate(TextBox1)  CDate(ADatS) And CDate(TextBox1) 
Gruss
Peter
Anzeige
AW: Nummerierung einfügen
09.11.2020 10:01:19
onur
Nochmal - Welche Kriterien?
NICHT welcher Code!!!
AW: Nummerierung einfügen
09.11.2020 16:34:00
Peter
Hallo Onur,
die Vergabe der "Tgb.-Nr." in Spalte D der Tabelle2 erfolgt abhängig vom aktuellen Datum in der Hilfstabelle Range I2. Grundsätzlich ist hier "=HEUTE()" eingetragen.
Um einen Test über mehrere Jahre durchzuführen, füge ich hier z. B. das Datum "09.11.2019" ein.
Dadurch ergibt sich für das laufende Schuljahr ein Anfangsdatum 01.08.2019 und ein Enddatum 31.07.2020.
Wir der erste Eintrag in Tabelle2 übertragen, wird das Feld Range B9 = "Datum" ermittelt. Dadurch wird dann die Tgb.-Nr. "1" ermittelt und in der UF TextBox7 eingetragen und mittels Button in die Tabelle übernommen.
Wird der nächste Eintrag eingegeben, wird die Tgb.-Nr. "2" ermittelt und übernommen usw..
Mein Problem ist jedoch, wenn ein neues Schuljahr vorhanden ist. Jetzt in Hilfstabelle Range I2 "09.11.2020" eintragen.
Wenn jetzt ein neuer Eintrag vorgenommen wir mit Datum z. B. "01.08.2020" dann soll der neue Eintrag mit Tgb.-Nr. "1" beginnen.
Eine noch bessere Lösung wäre jedoch, wenn auch bei Eingabe eines Datum vor dem Anfangdatum des neuen Schuljahres mit deer Tgb.-Nr. "1" begonnen würde.
Ich hoffe ich habe den Ablauf verständlich erläutert.
Gruss
Peter
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige