こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excel マクロで、ファイル形式を一括変更したい

Excel マクロで、ファイル形式を一括変更したいです。

デスクトップにある「Aフォルダ」の中に xlsファイルが100ほどあります。
それらのファイルを xlsxファイルに変更して、同じくデスクトップにある「Bフォルダ」に保存したいです。

わからないなりに、つぎはぎでやってみたのですが、保存場所の指定がうまくいかなくて困っています。

よろしくお願いします

投稿日時 - 2019-02-04 23:24:11

QNo.9584729

困ってます

質問者が選んだベストアンサー

>デスクトップにある「Aフォルダ」の中に xlsファイルが100ほどあります
Sub Test()
  Dim fso As Object
  Dim f As Object
  Dim myBook As Workbook
  Dim myPath As String, bn As String

  Application.ScreenUpdating = False
  myPath = CreateObject("WScript.Shell").SpecialFolders("Desktop")
  Set fso = CreateObject("Scripting.FileSystemObject")
  For Each f In fso.GetFolder(myPath & "\A").Files
    If LCase(fso.GetExtensionName(f)) = "xls" Then
      bn = fso.GetBaseName(f)
      Set myBook = Workbooks.Open(f)
      myBook.SaveAs Filename:=myPath & "\B\" & bn,       FileFormat:=xlWorkbookDefault
      myBook.Close False
    End If
  Next
  Set fso = Nothing
  Application.ScreenUpdating = True
  MsgBox "End"
End Sub

投稿日時 - 2019-02-05 09:02:22

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

図の様に入力フォルダと出力フォルダを入れて実行して下さい。
マクロは消えます。
'
Option Explicit
'
Sub Macro1()
'
  Dim FileName As String
'
  FileName = Dir([B1] & "\*.xls")
  Application.DisplayAlerts = False
'
  While FileName > ""
    Workbooks.Open [B1] & "\" & FileName
    ActiveWorkbook.SaveAs ThisWorkbook.ActiveSheet.[B2] & "\" & FileName & "x", _
      xlOpenXMLWorkbook
    ActiveWindow.Close
    FileName = Dir
  Wend
  Application.DisplayAlerts = True
End Sub

投稿日時 - 2019-02-05 08:43:36

あなたにオススメの質問