Excel

ドラッグ&ドロップでExcelファイルをアドイン形式(xlam)に一括変換するVBScript

複数のExcelファイルをアドイン形式(xlam)に変換する必要があったので、以前書いた記事を流用してスクリプトを書いてみました。

Option Explicit

Dim Fso
Dim Args
Dim OutputFilePath
Dim i

Const xlOpenXMLAddIn = 55

Set Fso = CreateObject("Scripting.FileSystemObject")
Set Args = WScript.Arguments
If Args.Count < 1 Then
  MsgBox "アドイン形式(xlam)に変換したいExcelファイルを当スクリプトファイルにドラッグ&ドロップしてください。", vbExclamation + vbSystemModal
  WScript.Quit
End If

'ドロップされたファイルを処理(複数ファイル対応)
On Error Resume Next
For i = 0 To Args.Count - 1
  Select Case LCase(Fso.GetExtensionName(Args(i)))
    Case "xls", "xlsx", "xlsm"
      OutputFilePath = Fso.GetParentFolderName(Args(i)) & ChrW(92) & Fso.GetBaseName(Args(i)) & ".xlam"
      With CreateObject("Excel.Application")
        .Visible = True
        .DisplayAlerts = False
        With .Workbooks.Open(Args(i))
          .SaveAs OutputFilePath, xlOpenXMLAddIn
          .Close False
        End With
        .DisplayAlerts = True
        .Quit
      End With
  End Select
  WScript.Sleep 500 '処理待ち
Next
On Error GoTo 0

MsgBox "処理が終了しました。"

使う場面は限られていますが、一々ファイルを開いて名前を付けて保存して・・・という手間は掛からないので、Excelファイルをxlamファイルに一括変換したいときにはお薦めのスクリプトです。

■ 関連記事

・古い形式のWordテンプレートを新しい形式に一括変換するVBScript
//www.ka-net.org/blog/?p=3427
・Office文書を旧バージョンのファイル形式に変換するVBScript
//www.ka-net.org/blog/?p=3828

「Office 2003 のコマンドに対応する Office 2010 のリファレンス ブック」のダウンロード先前のページ

SharpDevelopのインストールと日本語化次のページ

関連記事

  1. アイコン一覧

    Office 365アイコン(imageMso)一覧(K,L)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  2. Office関連

    日本標準時(JST)を取得するVBAマクロ

    先日、もり(@moripro3)さんのツイートに対して下記のような返信…

  3. Office関連

    [Office]OutlookとIMEの利用に関するアンケートへの回答でAmazonギフト券が当たる…

    昨年の11月、「シンプルリボン」に関するアンケートが行われました(下記…

  4. Excel

    PDFのしおり数を取得するVBAマクロ

    「VBA Acrobat しおり数」といったキーワード検索でのアクセス…

  5. Office関連

    Slackのカスタム絵文字を一括作成するVBAマクロ

    在宅勤務で使うビジネスチャットサービスとして注目されている「Slack…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP