質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

Q&A

解決済

1回答

2121閲覧

コマンドプロンプトでのgitの実行結果をExcel VBAでWshShellを使って取得する。

nayameru

総合スコア8

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

コマンドプロンプト

コマンドプロンプト(cmd.exe)はMicrosoftによって提供されているコマンドラインインタプリタです。OS/2・Windows CE・Windows NTで使用可能です。

0グッド

0クリップ

投稿2021/08/14 08:44

Windows10のコマンドプロンプトにおいて、
gitの実行結果をExcel VBAでWshShellを使って取得しようとしているのですが
うまく行きません。
下記コードでfncWinScriptが空になります。
commandには、
git checkout コミットID
を渡しており、実行後はちゃんとcheckoutできています。
commandに、例えば、
ipconfig
を渡すとfncWinScriptに結果の文字列が入って返ってきます。
gitは何か特別なのでしょうか。

Excel

1Public Function fncWinScript(実行パス As String, command As String) As String 2Dim WSH As WshShell 3Dim wExcec As Object 4 5Set WSH = New WshShell 6Set wExec = WSH.Exec("%ComSpec% /c " & "set LESSCHARSET=utf-8 && cd " & 実行パス & " && " & command) 7 8Do While wExec.Status = 0 9 DoEvents 10Loop 11 12Sleep(1000) 13DoEvents 14 15fncWinScript = wExec.StdOut.ReadAll 16 17Set wExec = Nothing 18Set WSH = Nothing 19 20End Function

何か分かりましたらアドバイス頂きたくよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

試してみると確かに標準出力には何も出てこないようですね。
特別というか、恐らく標準出力のクリアなどしているのでしょう。

じゃあ、何も出ていないのかというとそうではなく、標準エラー出力には何か出ていますので見てみましょう。

※ VBAではStdOutStdErrに変えるだけです

やってみたところ、一応出てきますねこれで何をしたいのかは存じませんが、成功か失敗かは判別できそうな感じです。

cloneが成功した場合

Cloning into 'example-project'...

失敗した場合(既にcloneしたものがある)

fatal: destination path 'example-project' already exists and is not an empty directory.

投稿2021/08/14 11:41

ishina_yum

総合スコア509

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nayameru

2021/08/14 12:16

そういうことでしたか。。。 まさに「成功か失敗かは判別」したかっただけですので、これで行けます。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問