将SaveAsCopy另存为范围名称的文件夹
我想要使用一个代码,将我正在使用的Excel工作簿的副本保存到特定的文件夹中。
这下面是我有,但我似乎没有得到任何保存副本。
我在"G4"
中获得的价值是我希望将该副本打印为的名称。
有没有人有任何想法可能是什么问题?
我仍然有学习这个VBA的东西问题=)它很难为一个新的程序员。
Sub SparatillFolder() Dim strFilename, strPathname, strDefpath As String On Error Resume Next ' If directory exist goto next line strFilename = sheets("Graf").Range("G4").Value 'New file name strDefpath = "\\C:"MYFOLDER" \dxakmh\Desktop\TestMiljö\Prognosverktyg\Sektionsfil\Gruppfiler\NyStruktur" 'Default path name If IsEmpty(strFilename) Then Exit Sub MkDir strDefpath strPathname = strFilename 'filename ActiveWorkbook.SaveCopyAs Filename:=strFilename & ".xlsm" End Sub
非常感谢亲爱的SO。
strDefpath
应该是strDefpath = "C:\dxakmh\Desktop\TestMiljö\Prognosverktyg\Sektionsfil\Gruppfiler\NyStruktur"
还使用.Text
示例Sheets("Graf").Range("G4").Text
Option Explicit Sub SparatillFolder() Dim strFilename As String Dim strDefpath As String 'New file name strFilename = ThisWorkbook.Sheets("Graf").Range("G4").Text strDefpath = "C:\dxakmh\Desktop\TestMiljö\Prognosverktyg\Sektionsfil\Gruppfiler\NyStruktur" If IsEmpty(strFilename) Then Exit Sub If Len(Dir(strDefpath, vbDirectory)) = 0 Then MkDir strDefpath ActiveWorkbook.SaveCopyAs Filename:=strDefpath & "\" & strFilename & ".xlsm" End Sub
Range.Text属性(Excel) 返回或设置指定对象的文本。 只读string。