Hallo liebe community,
ich brauche mal ganz dringend Hilfe.
Wir haben seit über 15 Jahren in der Firma ein Makro in Word (in der "normal.dot") mit dem wir unseren Dokumenten eine fortlaufende Nummer vergeben das dann sofort das Dokument auf den Server unter dieser Nummer abspeichert. Beispiel: fortlaufende Nummer ist 12345 und das Dokument wird dann unter "12345.docx" abgespeichert.
____________________________________________________________
Public Sub DocxNr()
Dim AlteNummer$
Dim NeueNummer
Dim DokNr$
WordBasic.WaitCursor 1
WordBasic.StartOfDocument
WordBasic.EditFind Find:="Nr.: ", Direction:=0, MatchCase:=1, WholeWord:=1, PatternMatch:=0, SoundsLike:=0, Format:=0, Wrap:=1
WordBasic.CharRight 1
AlteNummer$ = WordBasic.[GetPrivateProfileString$]("DocNr", "AlteNummer", "F:\FORMULAR\docnr.ini")
NeueNummer = WordBasic.ToolsCalculate(AlteNummer$ + "+1")
WordBasic.SetPrivateProfileString "DocNr", "AlteNummer", Str(NeueNummer), "F:\FORMULAR\docnr.ini"
WordBasic.Insert Str(NeueNummer)
WordBasic.CharLeft 1
WordBasic.ExtendSelection
WordBasic.ExtendSelection
DokNr$ = WordBasic.[Selection$]()
ActiveDocument.SaveAs2 fileName:="F:\DOKUMENT\" + DokNr$ + ".docx", FileFormat:=wdFormatXMLDocument
WordBasic.WaitCursor 0
End Sub
_________________________________________________
Das hat bisher auch in allen Word- und Windows-Versionen gut funktioniert. Im Moment läuft es auf allen Rechnern mit WIN7 (32 oder 64bit). Den Code hat irgendwann mal jemand geschrieben. Ich, und hab überhaupt keine Ahnung, hab ihn vor einem Jahr irgendwie angepasst, damit er auch in Office 2013 seinen Dienst versieht.
Jetzt haben wir einen neuen Rechner mit WIN 10, und siehe da - er speichert nicht mehr korrekt. Er holt die neue Nummer (aus der "docnr.ini"), trägt sie auch ins Dokument ein, aber wenn er auf den Server (nach "F:\Dokument") speichern will, will er ins Standartverzeichnis mit einem neue Namen.
Ich hoffe, ihr versteht was ich meine. Der Debugger stoppt an dieser Zeile:
ActiveDocument.SaveAs2 fileName:="F:\DOKUMENT\" + DokNr$ + ".docx", FileFormat:=wdFormatXMLDocument
So, ich hoffe, ihr versteht mein Problem. Ich kann mir vorstellen, dass es für vba-Profis nur ein Klacks ist, aber wie gesagt ich hab überhaupt keine Ahnung.
Vielleicht kann mir ja jemand den richtigen Code schreiben/anpassen/umschreiben oder so.
Ich wäre sehr dankbar für jede Hilfe
|