da mir bisher immer super geholfen wurde wende ich mich mal wieder an Euch mit einem für mich nicht lösbaren Problem. Habe im Archiv schon rund 2 Stunden zugebracht da es schon viele Beiträge zum Thema gibt, bin aber leider nicht fündig geworden ein paar Ansätze hab ich gefunden aber eben nicht das was ich suche.
Nun mal zum Problem: Ich möchte eine laufende Nummer vergeben lassen. Diese soll ab einer bestimmten Zahl beginnen und beim öffnen meiner Vorlage (als .xlt gespeichert) automatisch um eins hochgezählt werden so dass keine Doppelvergabe stattfinden kann. Diese neue Nummer muss dann in die xlt. zurückgeschrieben werden um beim neuen öffnen wieder hochgezählt werden zu können. Danach wird die Arbeitmappe per Makro an einem bestimmten Ort unter einem bestimmten Namen gespeichert und gedruckt. Dies hab ich schon mit eurer Hilfe realisieren können. Natürlich darf beim erneuten öffnen dieser Mappe dann die Nummer nicht verändert werden.
Ich hoffe, dass Ihr mit meiner Erklärung klarkommt und wisst was ich meine.
folgend der Code zum Speichern und drucken vllt. könnt Ihr den gebrauchen.
Danke im voraus
Frank
Private Sub CommandButton1_Click()
End Sub
Private Sub CommandButton2_Click()
Const SpeicherPfad = "D:\Rapporte\"
Const bytSek As Byte = 1 'Anzahl Sekunden
Dim strFileName As String
Dim objWSH As Object
Dim intMeldung As Integer
If Range("Z5") = "" Then
MsgBox "Bitte Feld Bemerkungen prüfen"
Else
strFileName = SpeicherPfad & Range("C6") & Range("D6") & "-" & _
Range("F9") & "-" & Range("Q6") & ".xls"
ActiveWorkbook.SaveAs strFileName
'Für die Meldungsbox
Set objWSH = CreateObject("WScript.Shell")
intMeldung = objWSH.Popup("", bytSek, "Datei gespeichert unter " & strFileName)
Set objWSH = Nothing
End If
End Sub
Private Sub Drucken_Click()
ActiveWindow.SelectedSheets.PrintOut Copies:=3, Collate:=True
End Sub