現在、スプレッドシートをダウンロードするマクロがあります更新: 自動的に開きます (保存されません) --当社のカスタム内部 Web インターフェイスから。スプレッドシート名は毎回変わります。現在の使用方法は、VBA エディターを開き、マクロを新しいモジュールにコピーしてから、マクロを実行することです。
次のような手順を実行するスタンドアロン ファイルを作成したいと思います。ワークブックを開いて、ファイルをダブルクリックします。
use open workbook
私の考えでは、問題のワークブックを開くことしかできず、スタンドアロン ファイル コードは(非常に一般的)のようなものになると思います。
vbs について読みましたが、マクロを .txt から vbs に変更しただけで、明らかにまだ動作しません。誰か正しい方向を示してもらえませんか?
答え1
これを機能させることはできましたが、Office で「VBA プロジェクトを信頼する」設定を有効にする必要があり、安全ではないと思われるため、この方法は使用しませんでした。
ただし、動作は次のようになります。
Dim xlApp, xlBook
Set xlApp = getObject( , "Excel.Application")
Set xlBook = xlApp.ActiveWorkbook
xlBook.VBProject.VBComponents.Import "\\PATH\Module1.bas"
xlApp.Run "Sub_Name"
'objExcel.ActiveWorkbook.Close
xlApp.Application.Quit
WScript.Echo "Finished."
WScript.Quit
私が最終的にやったことは、カスタム「OfficeUI」を --> 経由で配布することでした。https://www.freesoftwareservers.com/display/FREES/Distributing+Macro+via+Add-In+-+Customized+Ribbon+-+Via+Batch
何らかの理由で、Web インターフェイスのリンクから Excel をロードするときに、XLSTART と Personal.xlsb の両方のファイルがロードされませんでした。ただし、OfficeUI のカスタム リボンはロードされました。Excel は「マクロ」について警告しませんでしたが、起動時にロードされなかったため、AddIn.xlam を XLSTART に配置しました。ただし、OfficeUI は file!Sub を直接呼び出すため、問題にはなりません。