Office - Word, Excel und Co. 9.747 Themen, 41.434 Beiträge

Problem mit fortlaufender Rechnungsnummer in Excelvorlage

mungomaggot / 2 Antworten / Flachansicht Nickles

Rechnungsvorlage Problem mit Makro---


Ich habe eine Rechnungsvorlage mit folgendem Makro geschrieben(Was
bewirken soll, dass,jedesmal wenn die Vorlage geöffnet wird in angegebener
Zelle der Wert um 1 inkrementiert):


Sub Auto_Open()


  Dim neuenummer As Integer
  Application.ScreenUpdating = False
  Workbooks.Open Filename:="D:\Sicherung\Factura.xlt"
  neuenummer = Cells(2, 1).Value
  neuenummer = neuenummer + 1
  Cells(2, 1).Value = neuenummer
  ActiveWorkbook.Save
  ActiveWorkbook.Close
  Range("D14").Select
  ActiveCell.Value = neuenummer
  Application.ScreenUpdating = True


End Sub


Dazu folgendes: Es funktioniert alles perfekt, bis auf das Problemm, wenn ich aus der Vorlage
eine Rechnung.xls erstelle, diese speichere (im Excel Dokumentformat.xls) und wieder aufrufe
zu einer späteren Ansicht etc., dann wir das Makro jedenfalls ausgeführt.
Dies möchte ich aber verhindern und nur, wenn ich die Originalvorlage (MEINE RECHNUNG.XLT)starte,soll jenes
Makro zur Inkrementierung des Wertes(fortlaufende Rechnungsnr.) abgearbeitet werden!



Wer kann mir helfen?
Vielen Dank, für jeden Rat---------

bei Antwort benachrichtigen
Edgar Rau mungomaggot „Problem mit fortlaufender Rechnungsnummer in Excelvorlage“
Optionen

Hi mungomagott,
Du scheinst Dich ja auszukennen, deshalb die Lösung nicht schrittweise:

Du musst eine neue Datei erstellen, die lediglich ein Makro (Auto_Open) enthält. Dieses Makro sollte so ähnlich aussehen:

Workbooks.Open Filename:= _
"C:\\Dokumente und Einstellungen\\X\\ _ Anwendungsdaten\\Microsoft\\Vorlagen\\Rechnung.xlt" _
, Editable:=True
Cells(17, 7) = Cells(17, 7) + 1
ActiveWorkbook.Save
ActiveWindow.Close
Workbooks.Add Template:= _
"C:\\Dokumente und _ Einstellungen\\X\Anwendungsdaten\\Microsoft\\Vorlagen\\Rechnung.xlt"
Windows("RngStart.xlt").Activate
ActiveWindow.Close


Speicher die Datei als RngStart.xlt
Das Beispiel gilt für die Zelle G17 (17,7). Das musst du noch auf deine Bedürfnisse anpassen. Wahrscheinlich 2,1
Die Datei RngStart könnte auch eine .xls Datei sein.
Wenn du jetzt die Datei RngStart öffnest (nicht als Vorlage öffnen sondern auf öffnen klicken, die Datei suchen und dann öffnen), wird obiges Makro ausgeführt:
Die Datei Rechnung.xlt wird geöffnet.
Der Wert in Zelle G17 wird um 1 erhöht.
Die Datei wird gespeichert.
Die Datei wird geschlossen.
Es wird eine Kopie der Rechnung.xlt erstellt und die Datei RngStart.xlt geschlossen.

Ich hoffe, Du wolltest es so haben.

Viel Erfolg


Edgar

Wer brauchen ohne zu gebraucht, braucht brauchen gar nicht zu gebrauchen
bei Antwort benachrichtigen