ホーム / マクロ動作のために必要な準備 / Pythonの動作環境を準備
Pythonの動作環境を準備
PythonスクリプトからFemtetを操作するための準備について説明します。
動作環境の準備
- Python for Windows 3.x(xはバージョン番号)がインストールされていること。
https://www.python.org/downloads/
-
動作確認は3.xで行っております。
- Python for Windows (pywin32) Extensions がインストールされていること。
https://github.com/mhammond/pywin32/releases
-
Pythonのバージョンおよび、OSシステムの種類(32ビット/64ビット)に対応しているインストーラでインストールしてください。
-
Python Femtet ユーティリティパッケージをインストールすると、自動でpywin32がインストールされます。
- OSのコマンドプロンプトからPythonおよびpipコマンドが実行できるようにPATHを設定していること。
- C:\Users\ユーザID\AppData\Local\Programs\Python\Python3xx\ (xxはバージョン番号)
- C:\Users\ユーザID\AppData\Local\Programs\Python\Python3xx\Scripts\ (xxはバージョン番号)
- Femtetマクロが動作できる状態になっていること。(手順)
Python Femtet ユーティリティパッケージの導入
- PythonスクリプトからFemtetの起動、別アプリケーションの起動等ができます。
- win32com.client.Dispatch関数で指定するFemtetインタフェースクラス名を簡略化して指定できます。
- 例:CFemtetの場合、正式名称 FemtetMacro.Femtet 簡略名称 CFemtet
-
この作業はユーザ毎に必要となります。venvなどで、仮想環境を構築されている場合は、仮想環境毎に初期化が必要です。
- 導入手順
- Python Femtet ユーティリティパッケージファイル(femtetutils-x.x.x-py3-none-any.whl)を取得します。(x.x.x)はバージョン番号
- 取得したファイルを任意のフォルダにコピーします。
- スタートメニューから、コマンドプロンプトを起動します。
- 下記のコマンドを実行します。
cd [手順2でファイルをコピーしたフォルダ]
pip install --upgrade femtetutils-x.x.x-py3-none-any.whl (x.x.x)はバージョン番号
-
Python Femtet ユーティリティパッケージファイルがインストールされます。
-
pywin32がインストールされていない場合は、自動でインストールされます。
- コマンドプロンプトに[Successfully installed femtetutils-x.x.x ... ]と表示されたらインストール完了です。
-
pip list コマンドで、femtetutilsとpywin32がインストールされていることを確認してください。
makepyツールによる初期化(pywin32)
- PythonからFemtetマクロ定数(定数の例:DYNAMIC_T)を利用するために、makepyツールによる初期化を実施します。
-
FemtetやPythonをバージョンアップした場合などで、マクロの有効化を行った場合はこの作業を必ず実施してください。
-
この作業はユーザ毎に必要となります。venvなどで、仮想環境を構築されている場合は、仮想環境毎に初期化が必要です。
- スタートメニューから、コマンドプロンプトを起動します。
- 下記のコマンドを実行します。
python -m win32com.client.makepy FemtetMacro
-
コマンドプロンプトに[Importing module]と表示されたら初期化完了です。
コマンドプロンプトを閉じてください。

動作確認
-
動作確認用Pythonスクリプトを取得し(自己解凍形式)、Pythonスクリプトファイル(check_femtet.py)を任意のフォルダに展開します。
-
コマンドプロンプトを起動します。
-
下記のコマンドを入力します。
-
Pythonが実行できるようにPATHを設定していないと下記コマンドが実行できません。
- CD [手順1でファイルを展開したフォルダ]
- python check_femtet.py
-
Femtetが自動起動し、Femtetウィンドウに直方体が表示されていることを確認します。



