【無料配布】SOLIDWORKSからUltiMakerCuraへSTLデータ自動転送するマクロ「SwToCura」

3Dプリンターをお使いの方は、SOLIDWORKSでモデリングしたあと、スライサー(UltiMakerCuraなど)にデータを持っていくとき、こんな風に感じたことはありませんか?

「名前を付けて保存 → STLを選択 → デスクトップに保存 → Curaを立ち上げる → STLをドラッグ&ドロップ……あー、めんどくさい!

3Dプリンターで試作を繰り返す設計者さんも、おうちでDIYを楽しんでいる方も、このちょっとした手間が貴重な時間を奪っていきますよね。

そこで今回は、SOLIDWORKSでボタンをクリックするだけで自動で3DモデルをSTL保存してCuraを立ち上げてくれるマクロを作成しました!

ぜひ日々のものづくりに役立ててください。

 

本記事では、このマクロの機能と使い方、そして無料ダウンロードのご案内をいたします。

 

このマクロでできること(動作イメージ)

SOLIDWORKS上で部品(Part)やアセンブリ(Assembly)を開いた状態で、登録したマクロボタンをクリックします。

以下の処理が一瞬で、自動的に行われます。

  1. デスクトップに「STL_File」フォルダを自動作成
  2. 開いているモデルをSTL形式で保存
  3. UltiMaker Curaを新規ウィンドウで起動し、保存したSTLを読み込む

ファイルを探してドラッグ&ドロップする手間はゼロです!

sugitama

SOLIDWORKSでのモデリングから、スライサーへのデータ転送がシームレスに行えて、とても便利です。

 

安定動作のための3つのこだわり(プロ向け解説)

ただ保存して開くだけでなく、エラーで止まらないようにかなりこだわって作り込みました。

 

  • スケール縮小バグの防止(スケールガード)
    環境や設定によっては、Curaに読み込んだ時に「モデルが1/1000の豆粒サイズになってしまう」という現象が起きることがあります。これを未然に防ぐため、マクロの内部で出力単位を強制的に「ミリメートル」に設定してから書き出すようガードをかけています。
  • ファイル名の自動クレンジング
    ファイル名に「丸括弧」や「スペース」が入っていると、システムによってはエラーの原因になります。マクロ側でこれらを自動的にアンダーバー(_)に置き換えてから安全に保存します。
  • 実ファイル存在検証(FSOバインド)
    SOLIDWORKS API特有の「内部的には保存成功しているのにエラーを返すバグ」を回避するため、Windowsのシステム(FileSystemObject)を使って実際にファイルが作られたかを直接確認する堅牢なロジックを組んでいます。アセンブリのマルチボディ警告などもサイレント処理でスキップします。

 

導入・設定手順

ダウンロードしたマクロをSOLIDWORKSに設定し、ワンクリックボタンを作る手順です。(所要時間:約3分)

 

STEP1:マクロファイルの配置

ダウンロードした SwToCura.swp を、ご自身のPCのわかりやすい場所(ドキュメント内の専用フォルダなど)に保存します。

 

STEP2:スライサーのパスを書き換える(※超重要)

このマクロは、デフォルトで C:\Program Files\UltiMaker Cura 5.12.0\UltiMaker-Cura.exe を起動するように設定されています。

お使いのCuraのバージョンや保存場所に合わせて、パスを書き換えます。

  1. SOLIDWORKSのメニューから ツール > マクロ > 編集 を選びます。
  2. 保存した SwToCura.swp を開きます。
  3. VBAエディタが開くので、下の方にある slicerPath = "..." の部分を、ご自身の環境のパスに書き換えます。
  4. 上書き保存(フロッピーのアイコン)を押して閉じます。

 

STEP3:ワンクリックボタンの作成

  1. SOLIDWORKS上部のツールバー付近で右クリック →「カスタマイズ」を選択。
  2. 「コマンド」タブ > 「マクロ」を選択。
  3. 「新規マクロボタン」を画面上部の使いやすい場所にドラッグ&ドロップ。
  4. 設定画面でマクロファイルとメソッド(main)を選択し、「OK」を押せば完成です!

 

無料ダウンロードの方法

以下のボタンからダウンロード画面に進んでください。

(※システムの都合上「購入」という表記になりますが、お支払いは一切不要です。)

 

 

Sugitama-Lab. からのお願い

このマクロは、皆さんの設計業務を少しでも楽にすることを目的に公開しています。

もし「役に立った!」「作業が楽になった!」と感じていただけましたら、ぜひブログのコメント欄やSNSで感想を教えていただけると大変励みになります。

「こんな機能も欲しい」というリクエストもお待ちしております!

  

マクロのカスタマイズや作成代行も承ります!

「自社の業務ルールに合わせて、マクロの挙動を少し変えたい」「こんな定型作業も自動化できないか?」といったご要望はありませんか?

Sugitama-Lab.では、SOLIDWORKSのオーダーメイドマクロ作成サービスも承っております。

ご相談はお気軽にどうぞ!

sugitama

SOLIDWORKSとCuraで座標軸を合わせるようにしてほしい!

他のスライサー(PrusaSlicerやBambu Studioなど)も使えるようにしたい!

などのカスタマイズも個別に対応します。

もしご興味がある方は、お気軽に下記ボタンもしくはDMにてご連絡ください。

 

まずは、お気軽にご相談ください

 

 

免責事項

本マクロは無料でご利用いただけますが、ご使用にあたっては以下の点にご留意ください。

  • 自己責任でのご使用をお願いします
    本マクロを使用したことによって発生したいかなる損害(データの消失、予期せぬPCのトラブル、業務の遅延など)についても、当ブログ(Sugitama-Lab.)および管理人は一切の責任を負いかねます。
    事前にバックアップを取り、自己責任にてご利用ください。
  • 動作環境について
    SOLIDWORKSのバージョンやエディション(企業向けライセンス、Maker版など)、PCの環境によっては、正常に動作しない可能性がございます。
    全ての環境での動作を保証するものではありませんので、あらかじめご了承ください。
  • カスタマイズと再配布について
    企業にお勤めのプロ設計者の方も、個人のMakerユーザーの方も、ご自身の業務や用途に合わせてマクロ(VBAのコード)を自由に改変・カスタマイズしていただいて構いません。ただし、販売目的での二次配布はご遠慮ください。
  • サポートについて
    原則として、個別の環境に合わせた不具合の修正や、マクロの書き方に関する技術的なサポートはお約束できかねます。
    (ブログのコメントなどでご報告いただいたバグについては、今後のアップデートの参考にさせていただきます!)

ルールを守って、日々の設計業務やモノづくりの効率化にぜひお役立てください!