Pythonのコードは後程アップします
(コード内のディレクトリは絶対パスを使っています)
まず、batファイルを作成します
(こちらも絶対パスです)
①Anacondaのインストール時に環境変数に設定の書き込みをする
②Windowsパワーシェルの実行ファイル(powershell.exe)がどこにあるかをを確認し
まず、それを起動させる
③次にシェルの中でPythonコマンドを実行するためのpython.exeのパスを半角開けて記入する
④更に、Pythonコードが記入されたpyファイルのパスを半角開けて記入する
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Users\XXXX\anaconda3\python.exe C:\Users\XXXX\Desktop\bunrui.py
次に
ExcelのVBAを作成します
リストボックスを用いて複数の処理の中から
実行したいものを選べるようにしました
Private Sub CommandButton1_Click()
Dim obj As WshShell
Dim sPath
sPath = UserForm1.ListBox1.Value
If sPath = "分類" Then
sPath = "C:\Users\XXXX\Desktop\bunrui.bat"
ElseIf sPath = "オミクジ" Then
sPath = "C:\Users\XXXX\Desktop\omikuji.bat"
Else
sPath = "C:\Users\XXXX\Desktop\temp.bat"
End If
Set obj = New WshShell
Call obj.Run(sPath, WaitOnReturn:=True)
End Sub
Dim obj As WshShell
Dim sPath
sPath = UserForm1.ListBox1.Value
If sPath = "分類" Then
sPath = "C:\Users\XXXX\Desktop\bunrui.bat"
ElseIf sPath = "オミクジ" Then
sPath = "C:\Users\XXXX\Desktop\omikuji.bat"
Else
sPath = "C:\Users\XXXX\Desktop\temp.bat"
End If
Set obj = New WshShell
Call obj.Run(sPath, WaitOnReturn:=True)
End Sub
=============================================
Private Sub CommandButton2_Click()
Unload Me
End Sub
Unload Me
End Sub
========================================
Private Sub UserForm_Initialize()
UserForm1.Caption = "Pythonを動かす"
With ListBox1
.AddItem "分類"
.AddItem "オミクジ"
.AddItem "温度予想"
End With
End Sub =============================================
Workbookをクリックし
Private Sub UserForm_Initialize()
UserForm1.Caption = "Pythonを動かす"
With ListBox1
.AddItem "分類"
.AddItem "オミクジ"
.AddItem "温度予想"
End With
End Sub
Workbookをクリックし
Private Sub Workbook_Open()
UserForm1.Show
End Sub
UserForm1.Show
End Sub
Workbookを開いたときにフォームが表示されるようにする
=============================================
この後、VBAでWshshellが使えるように設定します
設定方法はURLを参考にしてください
結果
Workbookを開くと下図のフォームが表れます
2番目のオミクジを選択するとコードが実行され
↓
1番目の分類を選択すると
↓
3番目の過去のデータから2019年の東京の月別
気温予想を選択すると
となります
Excelは慣れ親しんでいる人も多く
それでPythonコードが自在に実行できるのは
大きなメリットになると思います