[[20200731115405]] 『VBSでマクロ起動』(ぱんなこった) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBSでマクロ起動』(ぱんなこった)

初心者です。
すいませんが教えてください。

下記のサイト様を参考に
cmdからのVBS起動でExcelマクロを起動する処理を実施したいと思ってます。

https://masamayu.com/windows%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%97%E3%83%AD%E3%83%B3%E3%83%97%E3%83%88%E3%81%8B%E3%82%89excel%E3%83%9E%E3%82%AF%E3%83%AD%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B/

コンパイルエラーにてExcel起動までいかない状態です。
何がいけないか教えて頂いてもよろしいでしょうか。

宜しくお願いします。


' C:\user\ファイル名 PERSONAL.XLSB!マクロ名.vbs '

Dim excelApp,file,macro

file = WScript.Arguments(0)
macro = WScript.Arguments(1)

Set excelApp = CreateObject("Excel.Application")

excelApp.Visible = False ' Excelを非表示にする'
excelApp.DisplayAlerts = False ' ポップアップメッセージを非表示にする'
excelApp.AutomationSecurity = 1 ' マクロを有効にする'

' Excelファイルを読み取り専用で開く'
excelApp.Workbooks.Open file,3,True

WScript.Echo "---マクロ実行中---"
WScript.Echo " ファイル:" & file
WScript.Echo " マクロ:" & macro

' マクロを実行する'
excelApp.Run macro

WScript.Echo "---マクロの実行が完了しました---"

' Excelを終了する'
excelApp.Quit

Set excelApp = Nothing

< 使用 Excel:Excel2019、使用 OS:Windows10 >


 文法的なエラーはありません。

 実行したときに、エラーメッセージがでているはずなので、
 エラーの発生場所と内容を確認して書き込んでください。

 「インデックスが有効範囲にありません」のエラーが
 file = WScript.Arguments(0)
 macro = WScript.Arguments(1)
 の行ででたら、実行時のコマンドライン引数の指定が足りてません。

 利用方法をもういちど確認してください。
(´・ω・`) 2020/07/31(金) 13:19

コメントありがとうございます。

エラー:終了していない文字列型の定数です。
コード:800A0409
ソース:コンパイルエラー

上記の内容となっております。

こちらのエラーおわかりになりますでしょうか。。。
(ぱんなこった) 2020/07/31(金) 14:07


 スクリプトファイルの文字コードは何になってるでしょうか。

 UTF-8 だとそのようなエラーがでるようです。
 shift-JISで保存しなおしてから実行してみてください。
 メモ帳だったら、名前を付けて保存で、文字コードをANSIにしてください。 
(´・ω・`) 2020/07/31(金) 14:21

起動出来ました!

(´・ω・`)さん
ありがとうございます。
大変助かりましたmm

ただ、サイトの記載にもあるように、
「このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。」
と出てExcelが読み取り専用になって起動しないので、
こちら修正してみます。
(ぱんなこった) 2020/07/31(金) 16:17


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.