Microsoft Excel との統合
このサンプルは、既存のExcelマクロの処理をPythonに移植することなく、PyFemtetで利用するためのデモを行います。
サンプルファイル
注釈
ここ に UI ファイルのマクロのベース作成に用いたプロジェクトファイルがあります。
このサンプルの使い方
警告
インターネットからダウンロードしたxlsmファイルのマクロを実行するには、セキュリティ設定を変更する必要があります。
Excelファイルを開き、「最適化の設定」シートに記載された設定を確認してください。同じシートの下部にある「call pyfemtet」ボタンを押してください。
注釈
このxlsmファイルに含まれるマクロは、元となるFemtetプロジェクトからのマクロ自動生成機能をベースに作成されています。そのため、Excelマクロを実行するとFemtetが起動し、元となる解析モデルを自動的に作成します。また、このマクロはxlsmファイル内のセルの変数を読み込んで、作成する解析モデルに反映するように改変されています。詳細な仕様については、Excelの「備考」シートおよびソースコードのコメントを参照してください。
設計変数
モデルの外観
変数名 |
説明 |
|---|---|
section_radius |
ワイヤ線の半径 |
coil_radius |
コイル底面の半径 |
coil_pitch |
コイルの巻きピッチ |
n |
巻き数 |
coil_radius_grad |
コイルのピッチごとの半径の増分 |
目的関数
自己インダクタンス(目標 100 nH)
概算体積(最小化)
サンプルコードの実行結果
実行中のスクリーンショット
pyfemtet-core.pyは、Femtetを直接実行する代わりに、xlsmファイルの各種セルの値を制御し、マクロを実行することで最適化を実施します。これにより、すでにExcelマクロを用いてFemtetによる自動設計フローを運用している場合、そのコードをすべてPythonに書き直すことなくPyFemtetとの統合が可能です。