Anzeige
Archiv - Navigation
1224to1228
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

Rechnungs-Nr. am Beginn und Ende ergänzen

Rechnungs-Nr. am Beginn und Ende ergänzen
Sunshine
Hallo liebe VBAlers,
ich habe folgendes Problem. Ich möchte Rechnungsnummern (Listennummern) am Textanfang und am
Textende ergänzen. Dazu benutze ich folgendes Makro:
Private Sub Befehl38_Click()
Dim nm As Variant
nm = DMax("[BeraterNrB]", "Betreuer")
If IsNull(nm) Then
nm = 1
Else
nm = nm + 1
End If
DoCmd.GoToRecord , , acNewRec
Me.BeraterNrB = nm
End Sub

Für diese fortlaufende Nummerierung möchte ich, dass eine 30, 300 oder 3000 vorweggestellt wird. Dazu habe ich über den Makrorekorder folgende Aufzeichung gemacht:
Sub Makro2()
ActiveCell.FormulaR1C1 = "=IF(LEN(R[-4]C)=3,CONCATENATE(30,R[-4]C))"
ActiveCell.FormulaR1C1 = _
"=IF(LEN(R[-4]C)=3,CONCATENATE(30,R[-4]C),CONCATENATE(300,R[-4]C))"
End Sub
Es soll also die Länge von nm betrachtet werden und dann der entsprechende Wert vor die Ziffer gestellt werden.
Das gleiche Problem habe ich mit der Jahreszahl die hinter fortlaufenden Nummern erscheinen soll. Also 1002011.
Kann mir jemand helfen?
Danke

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Rechnungs-Nr. am Beginn und Ende ergänzen
02.08.2011 13:23:25
Thomas
schon mal mit
format(nm, "0000") z.b. für ne vierstellige Zahl mit führenden Nullen probiert?
Thomas
AW: Rechnungs-Nr. am Beginn und Ende ergänzen
02.08.2011 13:47:46
fcs
Hallo Sunshine,
wie wärs, wenn du zur Nummer einfach 30000 addierst, um die 3 mit entsprechender Anzahl Nullen voranzu stellen.
Um die Jahreszahl anzuhängen:
Zahl mit 10000 multiplizieren und Jahr addieren.
Also etwa wie nachfolgend. Alternativ kann man die Rechnungsnummer natürlich auch aus Textteilen zusammenstellen.
Gruß
Franz
Sub aatest()
Dim nm
nm = 100 'testwert
MsgBox nm & vbLf & RechnungsNummer(Nummer:=nm, Startnummer:=30000), vbOKOnly, _
"RechnungsNummer-Numerisch"
MsgBox nm & vbLf & RechnungsNummer2(Nummer:=nm, Startziffer:="3"), vbOKOnly, _
"RechnungsNummer-Test"
End Sub
Function RechnungsNummer(ByVal Nummer As Long, Startnummer As Long, _
Optional Jahr As Long) As Long
RechnungsNummer = Nummer + Startnummer
If Jahr = 0 Then
RechnungsNummer = RechnungsNummer * 10000 + Year(Date)
Else
RechnungsNummer = RechnungsNummer * 10000 + Jahr
End If
End Function
Function RechnungsNummer2(ByVal Nummer As Long, Startziffer As String, _
Optional Jahr As String) As String
RechnungsNummer2 = Startziffer + Format(Nummer, "0000")
If Jahr = "" Then
RechnungsNummer2 = RechnungsNummer2 & Format(Year(Date), "0000")
Else
RechnungsNummer2 = RechnungsNummer2 & Jahr
End If
End Function

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige