Sallyfomthevalley
New Member
- Joined
- Feb 2, 2018
- Messages
- 14
Hi there, I have created several templates in excel ( latest version ) and have added a command button which saves the template as PDF, the code below works perfect for me on windows but some of the users have MACs and they get the following error when pressing the button
'Run-time error '1004' :
Method ' GetSaveAsFilename' of object '_Application' failed
This is the code I am using:
-------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------
I think I need to add a path so that it works with both windows and Mac but I have no idea where to add the path or what that path is....
Any help would be much appreciated
Many thanks
Sally
'Run-time error '1004' :
Method ' GetSaveAsFilename' of object '_Application' failed
This is the code I am using:
-------------------------------------------------------------------------------------------------------------------------
Code:
Sub PDFActiveSheet()
'www.contextures.com
'for Excel 2010 and later
Dim wsA As Worksheet
Dim wbA As Workbook
Dim strTime As String
Dim strName As String
Dim strPath As String
Dim strFile As String
Dim strPathFile As String
Dim myFile As Variant
On Error GoTo errHandler
Set wbA = ActiveWorkbook
Set wsA = ActiveSheet
strTime = Format(Now(), "yyyymmdd\_hhmm")
'get active workbook folder, if saved
strPath = wbA.Path
If strPath = "" Then
strPath = Application.DefaultFilePath
End If
strPath = strPath & ""
'replace spaces and periods in sheet name
strName = Replace(wsA.Name, " ", "")
strName = Replace(strName, ".", "_")
'create default name for savng file
strFile = strName & "_" & strTime & ".pdf"
strPathFile = strPath & strFile
'use can enter name and
' select folder for file
myFile = Application.GetSaveAsFilename _
(InitialFileName:=strPathFile, _
FileFilter:="PDF Files (*.pdf), *.pdf", _
Title:="Select Folder and FileName to save")
'export to PDF if a folder was selected
If myFile <> "False" Then
wsA.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=myFile, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
'confirmation message with file info
MsgBox "PDF file has been created: " _
& vbCrLf _
& myFile
End If
exitHandler:
Exit Sub
errHandler:
MsgBox "Could not create PDF file"
Resume exitHandler
End Sub
I think I need to add a path so that it works with both windows and Mac but I have no idea where to add the path or what that path is....
Any help would be much appreciated
Many thanks
Sally
Last edited by a moderator: