Thema Datum  Von Nutzer Rating
Antwort
Rot Speichermakro funktioniert (nicht?!)
30.09.2015 14:30:56 Quellkot
NotSolved

Ansicht des Beitrags:
Von:
Quellkot
Datum:
30.09.2015 14:30:56
Views:
743
Rating: Antwort:
  Ja
Thema:
Speichermakro funktioniert (nicht?!)
Hallo ihr Lieben... 
Ich brauche mal eure Hilfe. Ich sitze jetzt seit Stunden an einem recht seltsamen Problem:
Ich habe eine sehr sehr lange Prozedur, die auch wunderbar funktioniert. Nur ein Teil macht mir Schwierigkeiten. Dabei sollen die Daten aus Excel in ein Word Dokument exportiert werden. 
 
Der runter gebrochene Quelltext, auf das was interessant ist:
 
Private Sub Create()
'Variablendeklaration
Dim objWord As Object
 
'Variablendefinition
Set objWord = CreateObject("Word.Application")
 
'Trage Daten aus UserForm in Tabelle ein
'...
 
'Exportiere in Excel Datei
...
 
'Exportiere in Word
objWord.documents.Open ThisWorkbook.Path & "\Vorlage.docm" 'Öffne die Vorlage
  
'Fülle die Vorlage anhand des dort hinterlegten Makros
objWord.Run "Makros.Import"
 
objWord.Quit
Set objWord = Nothing
 
End Sub
 
'Speichermakro
Sub SaveAsName()
'Auslesen der Nummer
Dim strPath As String, strNummer As String
strNummer = _
Vorlage.SelectContentControlsByTitle("lblNummer").Item(1).Range.Text
strPath = Vorlage.Path & "\DOCX\" & strNummer & ".docx"
 
ChangeFileOpenDirectory Vorlage.Path & "\DOCX\"
ActiveDocument.SaveAs2 FileName:= _ '
strPath, FileFormat:= _
wdFormatXMLDocument, LockComments:=False, Password:="", _
AddToRecentFiles:=True, WritePassword:="", _
ReadOnlyRecommended:=False, EmbedTrueTypeFonts _
:=False, SaveNativePictureFormat:=False, SaveFormsData:=False, _
SaveAsAOCELetter:=False, CompatibilityMode:=15
End Sub
Hinweis: Speichermakro ist zu diesem Zeitpunkt ein aufgenommenes, SaveAs2 ist also an der Stelle kein Syntaxfehler. 
 
Am Ende des Makros Import (in dem Modul "Makros") wird die Prozedur "SaveAsName" aufgerufen. 
Jetzt kommt das Problem:
Wenn ich die Vorlage.docm öffne und das Makro Import ausführe, werden die Daten importiert und das Dokument wird unter dem richtigen Namen, unter dem richtigen Pfad abgespeichert. 
Wenn ich jetzt den besagten Quelltext aus meiner Prozedur in Excel aufrufe (durchlaufe im Einzelschritt - Debugmodus), dann funktioniert alles Augenscheinlich wunderbar. Die Makros werden in der richtigen Reihenfolge durchlaufen, es kommt zu keiner Fehlermeldung, alles macht was es soll. Auch das Speichermakro wird durchlaufen. 
Wenn ich anschließend aber in den Ordner gucke, wurde die Datei nicht erstellt. 
(Wenn ich die Makros manuell aus der Vorlage ausführe wird die Datei erstellt!)
 
Ich habe jetzt schon auf verschiedensten Wegen versucht das Problem zu umgehen. Die meisten eher verzweifelt als effizient.
Ich habe auch schon verschiedenste Lösungsansätze für das Speichermakro versucht, komme aber einfach auf keine gescheite Lösung, vor allem, weil der Quelltext ja richtig zu sein scheint (?!)
 
Vielleicht hat einer von euch eine Idee woran das liegen könnte? 
 
(Es tut mir übrigens Leid, falls ein solcher Beitrag bereits existiert, aber ich weiß ehrlich gesagt gar nicht wirklich wonach ich da suchen soll...)

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Speichermakro funktioniert (nicht?!)
30.09.2015 14:30:56 Quellkot
NotSolved