Hallo zusammen,
mein Ziel ist es beim öffnen des Excell Lieferschein - Templates eine fortlaufende Nummer einzutragen. Diese Nummer soll aber nicht einfach so erstellt werden, sondern ich habe in einem Ordner eine bestimmte Anzahl an Lieferscheinen schon darliegen und es soll die nächst höhere Nummer eingetragen werden.
Die Lieferscheine haben folgende Syntax im Ordner wo diese gespeichert werden:
LS_PSM2020-0001
LS_PSM2020-0002
.... usw.
Im Lieferschein selber ist die Syntax aber PSM2020-0001 etc.
Folgenden Code habe ich schonmal aus dem Internet gefunden vielleicht kann man den ja als Grundlage her nehmen. Den versteh ich leider mit meinen VBA Skills nicht wirklich weshalb ich hier bin.
Code:
Option Explicit
Private Function get_last_Number() As String
Dim fso As Object
Dim oFolder As Object
Dim oFile As Object
Dim temp As String
Dim fileName As String
Dim i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
Set oFolder = fso.GetFolder("C:\Users\senoglukext\Desktop\KaanSenoglu\Kaan\TEST ORDNER") 'Dein Ordner Pfad mit Dateien
temp = "0000"
For Each oFile In oFolder.Files
i = InStrRev(oFile.Name, ".") - 1
fileName = Left(oFile.Name, i)
If Right(fileName, i - 4) > temp Then
temp = Right(fileName, 4)
End If
Next oFile
If temp < "" Then get_last_Number = temp
Set fso = Nothing
Set oFolder = Nothing
End Function
Private Sub Workbook_Open()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets(1)
With ws
.Cells(7, 4).Value = "PSM2020" & CStr(get_last_Number) 'E5
End With
End Sub
Danke schonmal im Vorraus!
|