サービス
サービスを探す
プロ人材を探す
仕事を探す
ブログを探す
サービス
サービスを探す
プロ人材を探す
仕事を探す
ブログを探す
- サービスを探す
- プロ人材を探す
- ノウハウ・素材を探す
- ブログを探す
- エージェントに人材を紹介してもらう
- 単発の仕事を探す
- 継続 (時給/月給) の仕事を探す
- エージェントに仕事を紹介してもらう
購入・発注したい方
受注・働きたい方
カテゴリ一覧
- PRO認定
- 人気のご利用シーン
- コンテンツ
弁護士検索・法律Q&A(法律相談)
ドキュメントマクロフォルダにパスを通すことで
内部のマクロを自由にインポートできるようになる
パスを通すマクロを 文書を開いた時 のイベントに登録すれば自動化できる
※ 埋め込みマクロ内のフォルダには必ず __init__.py を配置すること
中身は空でいい
これがないとパッケージとして機能しないのでインポート時にエラーになる
import os, sys, uno
def setup_document_macros(event=None):
"""ドキュメント内に埋め込まれたマクロフォルダにパスを通す。
Args:
event: 文書を開いた時のイベント。手動実行も可能
"""
doc = XSCRIPTCONTEXT.getDocument()
file_path = uno.fileUrlToSystemPath(doc.URL)
document_macro_path = os.path.join(file_path, "Scripts", "python")
if document_macro_path not in sys.path:
sys.path.append(document_macro_path)
※ 未保存の新規ファイルだとパスを取得できないので
ファイルを一度保存してから実行する必要がある
ない
ドキュメントのフルパス/Scripts/python
from pathlib import Path
import uno
ブック = XSCRIPTCONTEXT.getDocument()
ブック_PATH = Path(uno.fileUrlToSystemPath(ブック.URL))
ドキュメントマクロフォルダのパス = str(ブック_PATH / "Scripts" / "python")