お世話になります。
独力での解決が困難な問題に直面したため、皆様のお力をお借りしたく、質問させていただきます。
あるxlamファイルを開くと、EXCELのウインドウが開き、アドインによってツールバーが追加されます。
ツールバーを開き、一番左のボタンをクリックすると、マクロが実行されます。
内部のマクロのコードをのぞいてみたところ、ボタンをクリックしたときには以下のコードが実行されることがわかりました。
vba
1CommandBars(ツールバー名).Controls(1).OnAction = "macroname" 2
このxlamファイルを使う作業を自動化したいと思いましたが、ある理由があり、このxlamファイルのマクロを改変することができません。
そこでxlamファイルのマクロを書き換えなくても自動化できるように、以下のようなvbsファイルを作成しました。
vbs
1'ExcelAppの開始 2Dim excelApp :Set excelApp = CreateObject("Excel.Application") 3excelApp.Visible=True 4 5'アドインファイルを開く 6excelApp.Workbooks.Open "xlamファイルの場所" 7 8'読み込むテキストファイルを開く 9 excelApp.Workbooks.Open "読み込むテキストファイルの場所" 10 11'マクロ起動 12 excelApp.Run "macroname" 13 14'テキストファイルに保存 15 excelApp.ActiveWorkbook.SaveAs "書き込むテキストファイルの場所" 16 17'ExcelApp終了 18excelApp Quit 19 20
このvbsファイルはxlamファイルを開くことも、テキストファイルを読み書きすることも正常に機能しますが、唯一マクロを実行する部分だけが動作しません。
そこで、上記の「マクロ起動」の部分を、マクロを起動させるのではなく、CommandBars(ツールバー名).Controls(1).OnActionに等しい処理を行うように書き換えたいと思います。
すなわち、ExcelAppで「ツールバーの一番左のボタンをクリックする」という処理を実装したいのです。
vbsを使って、EXCELに対してツールバーのボタンを押したと指示を出す方法を教えてください。
よろしくお願いします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/10/05 11:23