[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『TEST.vbsを実行し、TEST.xlsm内のマクロを実行し、TEST.xlsmを閉じたい』(ranks)
TEST.vbsを実行し、TEST.xlsmを開きマクロを実行し、TEST.xlsmを閉じる
処理を試みています。
(TEST.xlsmを閉じるためにマクロ内でTEST_02.vbsに飛ばしています。)
別のExcelのブックが開いていない状態でTEST.vbsを実行すると問題なく処理が完了するのですが、
別のブックを開いている状態で実行すると
スクリプト:C:\TEST\TEST_02.vbs
行: 3
文字: 1
エラー: インデックスが有効範囲にありません。
コード: 800A0009
ソース: Microsoft VBScript実行時エラー
が発生します。
他のExcelbookが開いている状態でも実行できるようにしたのですが
どのように修正すればよいかわかりません。
ご教授いただけませんでしょうか。
以下が作成したvbsファイルとエクセルマクロの内容です。
【TEST.vbs】
Dim ex
Set ex = CreateObject("Excel.Application")
ex.Workbooks.Open("C:\TEST\TEXT.xlsm")
ex.Application.Run "test"
【TEXT.xlsm マクロ】
Sub test()
ActiveSheet.Range("P1").Select Selection.NumberFormatLocal = "00"
CreateObject("WScript.Shell").Run ("C:\TEST\TEST_02.vbs") End Sub
【TEST_02.vbs】
Dim bk, ex
Set ex = GetObject(, "Excel.Application")
Set bk = ex.Workbooks("TEST.xlsm") ←ここでエラーが発生している
bk.Close
ex.Quit
Set bk = Nothing
Set ex = Nothing
MsgBox("Success")
< 使用 Excel:Excel2019、使用 OS:Windows10 >
TEST.VBSで全部完結させればいいのでは? (´・ω・`) 2021/07/11(日) 00:07
【TEST.vbs】
Dim ex , exworkbooks
Set ex = CreateObject("Excel.Application")
Set exworkbooks = ex.Workbooks.Open("C:\TEST\TEST.xlsm")
exworkbooks.Application.Run "変換"
exworkbooks.Close
【TEXT.xlsm マクロ】
Sub test()
ActiveSheet.Range("P1").Select Selection.NumberFormatLocal = "00"
End Sub
(ranks) 2021/07/11(日) 00:45
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.