Ein Export Als Festes Format Excel 2007
Habe ich die Aufgabe übertragen wurde, die Entwicklung eines excel-Dokuments, das ganze Büro verwenden. Der Benutzer klickt auf eine Schaltfläche und das makro wird die Datei exportieren als PDF in einen freigegebenen Ordner. Ich schrieb diesen code getestet und dieser code mithilfe von excel 2010. Menschen, die sich mit excel 2007, wo immer die Fehlermeldung "Laufzeitfehler 1004-Dokument nicht gespeichert. Dieses Dokument ist möglicherweise geöffnet, oder ist möglicherweise ein Fehler aufgetreten beim speichern." Ich sah in das problem ein wenig und fand, dass excel 2007 erforderlich, ein add-in update, also habe ich es installiert auf Ihrem Computer. Ich habe auch geprüft, um zu sehen, wenn Sie haben adobe auf Ihren Rechner und Sie tun es. Sie sind immer noch mit dem problem, und ich bin nicht sicher, was zu tun ist. Jede Hilfe wäre sehr geschätzt werden!
Hier ist mein code
' Define all variables
Dim strFileName As String
Dim folder As String
Dim member As Integer
Dim member_count As Integer
Dim member_name As String
Dim show As Variant
Dim MyTime As String
'Save as new file
Worksheets("Input data").Visible = True
folder = Sheets("Input data").Range("location").Value
MyTime = Time
Sheets("Input data").Select
Range("G2").Value = MyTime
strFileName = folder & "Material Request - " & Sheets("Input data").Range("name").Value & "_" & Sheets("Input data").Range("date").Value & " " & Sheets("Input data").Range("time").Value & ".pdf"
Sheets("Material Request").Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFileName 'OpenAfterPublish:=True`
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beginnen sollten Sie mit der änderung des Codes zu entfernen
.Select
&.ActiveSheet
Instanzen.Finden Sie auf dieser MSDN-Arbeitsblatt.ExportAsFixedFormat-Methode, müssen Sie möglicherweise füllen Sie weitere Parameter je nach Eigenschaften des Arbeitsblatts "Eingabe-Daten".
Habe ich einige Prüfungen und beziehen sich auf Direktfenster, um zu überprüfen Wert
strFileName
im Jahr 2007.oWS.Range("name").Value
,oWS.Range("date").Value
undoWS.Range("time").Value
haben? sollte diese Methode verursacht die strFileName zu stoppen verketten.Ich hatte ein ähnliches problem (Fehler 1004 beim Versuch zu exportieren). Nach einer Stunde mein Haar ziehen, hier war die Quelle meines Problems.
Ich war vorbei, der Wert in einer Zelle als Teil der Erzeugung der Dateinamen. Ich Tat dies in der Form von
Den text in der Zelle selbst wurde formatiert werden, die in zwei Zeilen (D. H. "obersten Zeile der text" + (Alt+K) + "untersten Zeile text"). Während der string sieht normal
Debug.print
,MsgBox
oder Wert Vorschauen, denke ich, dass es eine verborgene Zeichen, die codiert die neue Zeile für die Zelle. Ich glaube, diese versteckten Zeichen, die den Fehler verursacht, wenn bestanden, als Teil des Dateinamens-argument. Ich vermute, dass Excel nicht abholen, aber die OS-Datei-system.In jedem Fall werden diese behoben das Problem für mich.