戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
ExcelVBAからPowershellスクリプトを実行させたい

    [195427] ExcelVBAからPowershellスクリプトを実行させたい-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ rico -(2022/12/02(18:49))
    □U R L/
      ExcelVBAからPowershellスクリプトを実行させたいのですが、ExcelからPowershellスクリプトに値を渡す方法が分かりません。
      何時間も調べたのですが、たったこれだけのことが出来ずに時間がかかってしまって情けなくなります。
      
      Powershellスクリプトの内容が入っているので、ここでの質問は場違いなのかな?けど、ここが大好きなので、ダメもとで質問させて下さい。
      
      Powershellスクリプトをexecで実行させたいのですが、次のように書きました。
      
      *********************************************
      [VBA側で]
      
      mmm = (値)
      xxx = "C:\aaa.ps1"
      
      Set execObj = wsh.exec("powershell -NoProfile -ExecutionPolicy Unrestricted " & xxx)
      
      Result = execObj.stdOut.ReadAll
      
      *********************************************
      [Powershellスクリプト側(aaa.ps1)で]
      
      Select-String -Path "D:\ggg.text" -Pattern (値) -Context 1,0
      *********************************************
      
      と書いています。
      
      VBA側のmmmに入れた値をPowershellスクリプトの(値)の所に渡したいのですが、どのように記述すればよいのでしょうか。
      
      値は1つしかないので、配列でなくてもよいのですが、Powershellスクリプトでは配列変数しか使えないと書いてあるサイトもあったような。
      
      どなたかお分かりの方、ご教示の程宜しくお願い致します。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195428] Re[1]: ExcelVBAからPowershellスクリプトを実行させたい-

    記事引用/メール受信=OFF■

    □投稿者/ 山田太郎 -(2022/12/03(10:33))
    □U R L/
      こんな感じでしょうか。。。
      
      *********************************************
      [VBA側で]
      
      mmm = (値)
      xxx = "C:\aaa.ps1"
      
      Set execObj = wsh.exec("powershell -NoProfile -ExecutionPolicy Unrestricted """ & xxx & """ """ & mmm & """")
      
      Result = execObj.stdOut.ReadAll
      
      *********************************************
      [Powershellスクリプト側(aaa.ps1)で]
      
      Param( $arg1 )
      
      Select-String -Path "D:\ggg.text" -Pattern $arg1 -Context 1,0
      *********************************************
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [195429] Re[2]: ExcelVBAからPowershellスクリプトを実行させたい-

    解決!!ありがとうございました! / 記事引用/メール受信=OFF■

    □投稿者/ rico -(2022/12/03(12:27))
    □U R L/

      山田太郎さん、やりました!ビンゴです!

      思わずガッツポーズしてしまいました。
      すごいじゃないですか!日本が勝ったときくらいうれしかったですね。

      Unrestricted以下の並べ方は、どのサイトを見ても見つからなかったし、自力では到底無理でした。

      長い時間、四苦八苦したんですけど、もっと早く質問すればよかった。
      ここのサイトはPowershellもいけるじゃないですか。Pythonとかもいけるのかな?

      教えて下さってどうもありがとう。感謝です。



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G