2016-04-06 2 views
0

私は以下のような簡単なマクロを書いています: 1.すべてのフォーマットを削除してください 2.すべての非表示の列を再表示しないでください 3. "フォーム"、 "フィールド"、 "データ辞書"、 " DataDictionaryEntries」 4.元のファイルが入っている場所の下(これらの4つのタブ付き)、ファイルを保存vbaを使用して元のファイルが保存されている場所にファイルを保存する方法は?

をここに私のコードです:。

Sub removeformat() 

Dim sheetlist As Variant 
Dim sheet As Variant 
sheetlist = Array("Forms", "Fields", "DataDictionaries", "DataDictionaryEntries") 

For Each sheet In sheetlist 
    Sheets(sheet).Activate 
    Sheets(sheet).Cells.Select 
    Selection.ClearFormats 
    Sheets(sheet).Cells(1, 1).Select 
    Sheets(sheet).Columns("A:IV").Hidden = False 

Next sheet 

Sheets(Array("Forms", "Fields", "DataDictionaries", "DataDictionaryEntries")).Copy 
ActiveWorkbook.SaveAs Filename:="File to Upload", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False 
ActiveWindow.Close 

End Sub 

問題は第四のステップです。元のファイルの場所に保存されず、代わりにExcelの既定の場所に保存されます。あなたはこの問題で私を助けてくれますか?どうもありがとう!

答えて

1

あなたはActiveWorkBook.Path

であなたの助けを
ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Path & "\" & "File to Upload", _ 
         FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False 
+0

感謝を与えていること、その後ActiveWorkbookと同じ場所に保存したい場合。 SaveAsをPathに変更するだけですか? –

+0

こんにちはTim Williamsさん、私はあなたのコードを試しましたが、それは私に示されました:ランタイムエラー:MS Excelはファイルにアクセスできません。 –

+0

ActiveWorkbook.SaveAsファイル名:= ActiveWorkbook.Path& "\"& "アップロードするファイル"、FileFormat:= xlOpenXMLWorkbook、CreateBackup:= False ActiveWindow.Close –

関連する問題