2

Excel VBA (よく知っている) から Python にアクセスするのに苦労しています。ここに非常に役立つ答えがありました(以下に再現)。私は非常に慎重に手順に従いました.Python 3.3またはPython 2.7を使用しているかどうかにかかわらず、同じエラーが発生します.

コマンド ボタンを使用して VBA コードを実行すると、次のステートメントで失敗します: PyScript.Language = "python" エラー メッセージ「実行時エラー 380: 指定された言語のスクリプト エンジンを作成できません」

アイデアはありますか?

私が使用しようとしているスタックオーバーフローからの回答は次のとおりです。

以下の手順に注意深く従ってください

  1. Activestate に移動し、[ActivePython 2.5.7][1] MSI インストーラーを取得します。
    2.6.x で DLL 地獄の問題がありました
  2. Windows マシンにインストールする
  3. インストールが完了したら、コマンド プロンプトを開き、

    C:\Python25\lib\site-packages\win32comext\axscript\client

  4. 実行する\> python pyscript.py と、Registered: Python というメッセージが表示されます。

  5. ms office の Excel に移動し、ワークシートを開きます

  6. [ツール] > [マクロ] > [Visual Basic Editor] に移動します
  7. Microsoft Script コントロール![alt text][2]への参照を追加します。
  8. 新しいユーザー フォームを追加します。UserForm に CommandButton を追加します。
  9. コード エディターに切り替えて、次のコードを挿入します。

    Dim WithEvents PyScript As MSScriptControl.ScriptControl

    Private Sub CommandButton1_Click()
       If PyScript Is Nothing Then
           Set PyScript = New MSScriptControl.ScriptControl
           PyScript.Language = "python"
           PyScript.AddObject "Sheet", Workbooks(1).Sheets(1)
           PyScript.AllowUI = True
       End If
       PyScript.ExecuteStatement "Sheet.cells(1,1).value='Hello'"
    End Sub
    

実行する。必要に応じて拡張して楽しむ

4

1 に答える 1