Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
912to916
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
912to916
912to916
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Rechnungnummer

Rechnungnummer
13.10.2007 21:54:08
Hans-Georg
Hallo wissende,
ich habe schon einiges in der Recherche gefunden, komme aber dennoch nicht weiter.
In meiner Excel Tabelle ( .XLT ) steckt ein kleines Problem.
Ich möchte gerne in einer Zelle eine fortlaufende Nummer vergeben.
Da die Datei automatisch (über ein Makro) gespeichert wird (als .XLS) müsste sich die Nummer also schon beim öffnen der Vorlage verändern.
Oder wer kann mir einen Vorschlag machen, wie ich eine vernünftige Rechnungsnummer erstelle ? ( Wie sollte die gestaltet sein; mit Kundennummer, Auftragsnummer und Datum ? )
Nun hab ich von Makros allerdings keine Ahnung und wenn, dann nur mit Hilfe.
Wer kann mir also dabei behilflich sein ?
Vielen Dank für eure Vorschläge
Hans-Georg

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

Betreff
Datum
Anwender
Anzeige
AW: Rechnungnummer
13.10.2007 23:35:00
Beate
Hallo Hans Georg,
lege testweise folgende Datei ins Verzeichnis c:\temp\Rg:
https://www.herber.de/bbs/user/46753.xlt
Sonst dürfen erstmal keine Dateien in diesem Verzeichnis sein. Aber alle Rechnungsdateien, die du aus der Vorlagedatei speicherst, müssen in dieses Verzeichnis gespeichert werden.
Das Workbook-Open Makro ruft das Makro DateiAnzahl auf, es werden die Dateien im Verzeichnis gezählt und somit in B1 eine fortlaufende Nummer ausgegeben. In D1 wird das Tagesdatum eingetragen.
Die Zeile:
If ThisWorkbook.Path "" Then Exit Sub
sorgt dafür, das das Workbook_open-Makro abbricht, wenn die Datei schon gespeichert wurde, damit die schon bestehende Rechnungsnr. und das Rechnungsdatum nicht überschrieben werden.
Wenn du meinen Vorschlag verfolgen willst, aber einen anderen Speicherpfad wählst, dann musst du diesen im Makro Dateianzahl ändern.
Gruß,
Beate
Die Codes:
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Private Sub Workbook_Open()
    If ThisWorkbook.Path <> "" Then Exit Sub
    DateiAnzahl
End Sub

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Sub DateiAnzahl()
    
    Dim Verzeichnis As String
    Dim Dateimaske As String
    Dim Anzahl As Integer
    
    Verzeichnis = "C:\temp\Rg\"
    Dateimaske = "*.*"
    
    Anzahl = NumberofFilesInDirectory(Verzeichnis, Dateimaske)
    
    Sheets("Tabelle1").Range("B1").Value = Anzahl
    Sheets("Tabelle1").Range("D1").Value = Date
    
    
End Sub

Function NumberofFilesInDirectory(Directory, Maske) As Integer
    
    Dim I As Long
    With Application.FileSearch
        .NewSearch
        .LookIn = Directory
        .Filename = Maske
        NumberofFilesInDirectory = .Execute(SortBy:=msoSortByFileName, _
            SortOrder:=msoSortOrderAscending)
    End With
    
End Function

Anzeige
AW: Rechnungnummer
13.10.2007 23:06:00
Josef
Hallo Hans-Georg,
kopiere diesen Code in das Modul "DieseArbeitsmappe" deiner Vorlage.
Die Rechnungsnummer wird in einer Textdatei gespeichert. Den Pfad wo diese Datei abgelegt werden soll, musst du anpassen. Ebenso musst du den Tabellennamen und die Zelle in welche die RgNr. geschrieben werden soll an deine Bedürfnisse anpassen.
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_Open()
Dim strFile As String, strNum As String

strFile = "F:\Temp\rgnr.txt" 'Pfad zur Textdatei - Anpassen!

If Sheets("Rechnung").Range("H9") = "" Then
    
    If Dir(strFile) <> "" Then
        Open strFile For Input As #1
        
        Input #1, strNum
        
        Close #1
    Else
        strNum = "1"
    End If
    
    Sheets("Rechnung").Range("H9") = Format(Date, "yyyymmdd-") & Format(strNum, "00000")
    
    strNum = CStr(strNum + 1)
    
    Open strFile For Output As #1
    
    Print #1, strNum;
    
    Close #1
    
End If


End Sub

Gruß Sepp

Anzeige
AW: Rechnungnummer
14.10.2007 08:14:00
Sonja
Hallo Hans Georg,
vergib doch erst die rechnungsnummer wenn du die rechnung druckst.

Sub Drucken()
[C6] = [C6] + 1
Range("C6").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End Sub


AW: Rechnungnummer
14.10.2007 10:09:51
Hans-Georg
Hallo,
war ja schon spät gestern also habe ich heute viel zum ausprobieren!
Vielen Dank den Antwortern. Ich werde es nachher mal versuchen.
Nochmals vielen Dank
Hans-Georg
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige