VBA学習備忘録④　VBAにも「イミディエイトウィンドウ」というPythonのインタクラティブシェルのようなものがあるらしい

<h2>そもそもVBA（Visual Basic for Application）とは</h2>

https://qiita.com/thinking-weed/items/b322d1e34b888aa3ca22

<h2>そもそもPythonのインタラクティブシェルとは</h2>

<details><summary>details</summary>

**対話モードともいう、PCに最初からインストールされているコンソール（Windowsならコマンドプロンプト、Macまらターミナル（※VScode等のターミナルとは別物である））から呼び出すことのできるPythonを1行ずつ実行する実行環境**

　なお、Python関連の本を買うと、よくAnacondaという開発環境を使うようにかいてあることがありますが、私は下記の参考資料⑥『確かな力が身につくPython「超」入門　鎌田正浩　著』に従い、VScode上（？）に開発環境作り、Javaも含め、できる限り一本化していて（とりあえず今のところは、何か動いていて）インタラクティブシェルを使う場合は個人的にそれが楽なので、
 
 **以下ここで言うインタラクティブシェルは、WindowsならVScodeのpowershellやcmd（コマンドプロンプト）で、MacならVScodeのzshで、下図のような「python&Enter」で起動させるVScode上でのインタラクティブシェル**を指すものとします。

![interactive_shell.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3584834/af17becf-a53e-525e-1306-70f2ef811a51.png)

<h4>1行ずつ入力していくのは面倒ですが、一旦入力したものは他のターミナルやシェル同様、↑↓キーでその時点でのインタラクティブシェルを閉じるまでは、過去にどこかの行で入力したものの履歴コピー（名称？です）が出てくる</h4>
<h5>　　　　　　　　　　　　　　　　　　かつ</h5>
<h4>マウス操作をする場合は、一般的な方法でコピーして、ペーストするときはクリックしてカーソルを合わし、右クリックするとペーストできる</h4>

ので**手早く出力結果を知りたいとき**に自分はよく使います。

　なお、「インタラクティブ」は「inter（相互）」＋「active（作用）」みたいな語源がある気がします
</details>

<h2>「イミディエイトウィンドウ」はたぶん「immediate window」</h2>

　**コードの動作を確認したり、ユーザー定義関数を使って計算した結果を確認したりできる**VBAにおけるインタラクティブシェルっぽいやつ。
<h5>　　　　　開発タブ⇒VBE(Visual Basic Editor)⇒表示タブ⇒イミディエイトウィンドウ</h5>
で出てきます

![immdiate_window_open.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3584834/fac7816d-b341-56ac-912c-ad3d141850bc.png)

![immediate_window.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3584834/f042e00a-cf9f-8fe3-b95b-0ee1537c6b22.png)

例えば、以下のように**Functionプロシージャを書いてユーザー定義関数を定義した後**
```vb
'    書式 Function 関数名(引数1 As データ型, 引数2 As データ型,…)As 戻り値のデータ型
'    ※データ型の指定は省略可能
'    なお、このユーザー定義関数はワークシートのセルに直接書き込んで使用することができる｡

Function 税込(価格 As Currency) As Currency
    税込 = Int(価格 * 1.1)
End Function
```
これを呼び出すマクロを考えて書く前に、
<h3>　　　?関数名(引数の例)　　　ここでなら例えば「?税込(100)」</h3>
をこのイミディエイトウィンドウに入力すると以下のように出力結果を得られる。

![immediate_window_conclusion.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3584834/d6b1e032-141a-2914-867c-4186e12a737b.png)

<h2>主な参考資料</h2>

①今すぐ使えるかんたん　Excel マクロ＆VBA　技術評論社 門脇香奈子　著
<details><summary>Amazonリンク</summary>

https://www.amazon.co.jp/%E4%BB%8A%E3%81%99%E3%81%90%E4%BD%BF%E3%81%88%E3%82%8B%E3%81%8B%E3%82%93%E3%81%9F%E3%82%93-Excel%E3%83%9E%E3%82%AF%E3%83%AD-Office-Microsoft-365%E5%AF%BE%E5%BF%9C%E7%89%88/dp/4297129701/ref=sr_1_3?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=87AM31OPUPGU&keywords=%E4%BB%8A%E3%81%99%E3%81%90%E4%BD%BF%E3%81%88%E3%82%8B%E3%81%8B%E3%82%93%E3%81%9F%E3%82%93+excel+%E3%83%9E%E3%82%AF%E3%83%AD%26vba+%E6%8A%80%E8%A1%93%E8%A9%95%E8%AB%96%E7%A4%BE+%E9%96%80%E8%84%87%E9%A6%99%E5%A5%88%E5%AD%90+%E8%91%97&qid=1705239199&sprefix=%E4%BB%8A%E3%81%99%E3%81%90%E4%BD%BF%E3%81%88%E3%82%8B%E3%81%8B%E3%82%93%E3%81%9F%E3%82%93+excel+%E3%83%9E%E3%82%AF%E3%83%AD+vba+%E6%8A%80%E8%A1%93%E8%A9%95%E8%AB%96%E7%A4%BE+%E9%96%80%E8%84%87%E9%A6%99%E5%A5%88%E5%AD%90+%E8%91%97%2Caps%2C281&sr=8-3
</details>

②スピードマスター　エクセル自動化 VBAサンプル100　コピってイジってすぐ使える　技術評論社　今村ゆうこ

<details><summary>Amazonリンク</summary>

https://www.amazon.co.jp/%E3%82%B9%E3%83%94%E3%83%BC%E3%83%89%E3%83%9E%E3%82%B9%E3%82%BF%E3%83%BC-%E3%82%A8%E3%82%AF%E3%82%BB%E3%83%AB%E8%87%AA%E5%8B%95%E5%8C%96-VBA%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB100-%E3%82%B3%E3%83%94%E3%81%A3%E3%81%A6%E3%82%A4%E3%82%B8%E3%81%A3%E3%81%A6%E3%81%99%E3%81%90%E4%BD%BF%E3%81%88%E3%82%8B-%E4%BB%8A%E6%9D%91-%E3%82%86%E3%81%86%E3%81%93-ebook/dp/B0BTCM43GT/ref=sr_1_4?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=3ZNXZDE69UB9&keywords=%E4%BB%8A%E6%9D%91%E3%82%86%E3%81%86%E3%81%93&qid=1705481528&sprefix=%E4%BB%8A%E6%9D%91%E3%82%86%E3%81%86%E3%81%93%2Caps%2C232&sr=8-4
</details>

③HITACHI Inspire the Next RPA業務自動化ソリューション【コラム】VBAとマクロの違いとは？VBA・マクロができること、マクロの作り方を徹底解説！
https://www.hitachi-solutions.co.jp/rpa/sp/column/rpa_vol26/

④エクセルの神髄（ ExcelとVBA の入門解説）
Excel および マクロ VBA 全般について入門解説から上級者に役立つ技術情報まで幅広く発信しているサイト。GAS、Python、SQLといった関連情報も載っている
https://excel-ubara.com/

⑤最初からそう教えてくればいいのに! PythonでExcelやメール操作を自動化する　ツボとコツがゼッタイにわかる本　立山秀利　著　秀和システム社

<details><summary>Amazonリンク</summary>

https://www.amazon.co.jp/%E4%BB%8A%E3%81%99%E3%81%90%E4%BD%BF%E3%81%88%E3%82%8B%E3%81%8B%E3%82%93%E3%81%9F%E3%82%93-Excel%E3%83%9E%E3%82%AF%E3%83%AD-Office-Microsoft-365%E5%AF%BE%E5%BF%9C%E7%89%88/dp/4297129701/ref=sr_1_13?crid=MN161L425MW7&keywords=excel+%E3%83%9E%E3%82%AF%E3%83%AD+vba&qid=1705932478&sprefix=Excel+%E3%83%9E%E3%82%AF%E3%83%AD%2Caps%2C219&sr=8-13
</details>

⑥確かな力が身につくPython「超」入門 第2版 (確かな力が身につく「超」入門)　鎌田正浩　著　SB creative社　

<details><summary>Amazonリンク</summary>

https://www.amazon.co.jp/%E7%A2%BA%E3%81%8B%E3%81%AA%E5%8A%9B%E3%81%8C%E8%BA%AB%E3%81%AB%E3%81%A4%E3%81%8FPython%E3%80%8C%E8%B6%85%E3%80%8D%E5%85%A5%E9%96%80-%E7%AC%AC2%E7%89%88-%E7%A2%BA%E3%81%8B%E3%81%AA%E5%8A%9B%E3%81%8C%E8%BA%AB%E3%81%AB%E3%81%A4%E3%81%8F%E3%80%8C%E8%B6%85%E3%80%8D%E5%85%A5%E9%96%80-%E9%8E%8C%E7%94%B0-%E6%AD%A3%E6%B5%A9/dp/4815613729/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=2QWFRN76M4ZK9&keywords=python+%E8%B6%85%E5%85%A5%E9%96%80&qid=1705932839&sprefix=python%E8%B6%85%E5%85%A5%E9%96%80%2Caps%2C226&sr=8-1
</details>