Win/XP エクセル2002使用です。
VBSからエクセルのマクロを有効にして立ち上げたいのですが、
上手くいきません。
バッチファイル側
cd /D c:\
C:\***.vbs
exit /B
VBS側
'エクセル起動
Set WshShell = CreateObject("WScript.Shell")
WshShell.CurrentDirectory = "C:\***"
WshShell.Run "C:\***\***.xls",3
WScript.Sleep(5000)
WshShell.SendKeys("E") '←マクロを有効にする
WScript.Sleep(5000)
WshShell.SendKeys("U") '←データソースへのリンクを更新
エクセル側(マクロ)
Sub Auto_open()
Application.OnTime TimeValue("13:00:00"), "Action"
End Sub
Sub Action()
・・・(省略)・・・
End Sub
-----------------------------
また、エクセルマクロは、VBSではなく手動で立ち上げますと、
問題なく時間になった時(13時)に作動します。
VBSのRunメソッドが、
エクセルマクロの
Application.OnTime を待たずに走ってしまうことで、
エクセルマクロが無効になってしまっているのではないか?
もしくは、データ更新のための
sendkey("U")によって
マクロが無効になってしまっているのはないか?
と思っています。
恐れ入りますが、
よろしくアドバイスの程お願いします。
No.1ベストアンサー
- 回答日時:
こんにちは。
VBS を使うなら、Excel のインスタンスを作り、Workbooks.Open で
ブックを開けばマクロのセキュリティー警告は表示されません。
# Open メソッドの第二引数でリンクの更新も指定できますし
SendKeys を使った方法より確実ですよ。一例です。
REM ■ Sample.bat ------------------------------------------
cd /D c:\
C:\test.vbs
exit /B
' // ■ VBS --- C:\test.vbs --------------------------------
Dim xlApp
Dim xlWbk
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
' // Memo: Workbooks.Open Filename, UpdateLinks ...
' // リンクを更新させて開く
Set xlWbk = xlApp.Workbooks.Open("C:\test.xls", True)
' // ■ Excel --- C:\test.xls -------------------------------
' // ThisWorkbook Module ( Auto_Open 不可では不可)
Private Sub Workbook_Open()
Application.OnTime Now() + TimeValue("00:00:03"), "Action"
End Sub
' // Standard Module
Sub Action()
MsgBox "Hellow!", vbInformation
End Sub
No.2
- 回答日時:
#1 です。
失礼。下記意味不明なことを口走ってますが、、> ' // ThisWorkbook Module ( Auto_Open 不可では不可)
Auto_Open ではなく、ThisWorkbook の Workbook_Open を使って下さい
との意味です。
KenKen_SP 様 早速のご回答ありがとうございます。
むっちゃ速! です(^・^)
ご教授いただいた上に、速い、確実!
最高です。 快調に動きだしました。
今後ともよろしくお願いします。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Excel(エクセル) エクセルのマクロの有効について 4 2023/08/03 11:40
- Excel(エクセル) エクセルの自動更新のタイミングについて 1 2022/07/20 16:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
VBA+VBSによる別インスタンスBookOpen時のVBSエラーに関して
Excel(エクセル)
-
VBSからエクセルのマクロを起動するがうまく動作しない
Excel(エクセル)
-
バッチファイルでエクセルのマクロを動かしたい
Excel(エクセル)
-
-
4
強制的にマクロを有効にするVBA
Excel(エクセル)
-
5
vbsからのExcelマクロ呼び出しの際に保存ダイアログが表示されてしまう
その他(プログラミング・Web制作)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
VBSでExcelのオープン確認
Visual Basic(VBA)
-
8
ファイルが開かれているかどうかの判断
Visual Basic(VBA)
-
9
“.vbs”のファイルが実行できない
Windows Me・NT・2000
-
10
エクセルでエラーが出て困っています。
Excel(エクセル)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
13
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
14
VBAで「致命的なエラー」が出ました。どのくらい致命的なんでしょうか?
Access(アクセス)
-
15
VBScriptでMsgBoxのYesNoボックスを自動的にクリックしたい
その他(プログラミング・Web制作)
-
16
VBAでCSVファイルが使用中かどうかの確認
Visual Basic(VBA)
-
17
VBscriptで、Excelのセルに文字列を入力するには?
その他(プログラミング・Web制作)
-
18
VBS実行時にコマンドプロンプトが表示される
その他(プログラミング・Web制作)
-
19
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
20
コマンドプロンプトからEXCELファイルを開き、印刷後、閉じるを一括に行いたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel マクロの編集がグレーに...
-
WPSOffice_マクロの有効化について
-
エクセルの表を複数枚印刷した...
-
複数のマクロボタンをまとめて...
-
エクセルマクロで、別のブック...
-
Excelのマクロでボタンを押すと...
-
エクセルの、記録を終了したマ...
-
エクセル ボタンに設定したマク...
-
エクセルで、「いいね」のよう...
-
エクセルで明日の日付を表示す...
-
エクセルでマクロを確認できな...
-
word2019で原稿用紙換算枚数の...
-
【マクロ】プリントスクリーン...
-
強制的にマクロを有効にするVBA
-
Excelのマクロ名の並び順の法則...
-
エクセル マクロ名にブック名...
-
検索はマクロで記録できないの...
-
Outlookにマクロの記録はないの...
-
テキスト・データをエクセルの...
-
エクセルでマクロ(Excel 4.0)...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
Excelのマクロでボタンを押すと...
-
エクセル マクロ名にブック名...
-
エクセルの、記録を終了したマ...
-
エクセルの表を複数枚印刷した...
-
エクセルで、「いいね」のよう...
-
エクセルマクロで、別のブック...
-
エクセルでマクロ(Excel 4.0)...
-
Excelマクロで、稼働中のマクロ...
-
別シートのマクロボタンをマク...
-
複数のマクロボタンをまとめて...
-
(Excel VBA)シートコピー時マ...
-
マクロをマクロを使ってコピー...
-
Excelマクロをバックグラウンド...
-
エクセルでマクロを確認できな...
-
エクセル ボタンに設定したマク...
-
リーグ戦(10チーム2コート)作...
-
なぜマクロの記録がなくなって...
-
マクロ実行ボタンを自動削除したい
おすすめ情報