※質問するときは、「フォーラムの利用に関するご案内」、とりわけ「質問するときは」に目を通し、OS の種類や Thunderbird のバージョンといった使用環境についての最低限の情報を書き添えることをお勧めします。Calendar のカテゴリがあるのに、Lightning 主体の話を Thunderbird のカテゴリで進めていいのかわかりませんが...。
もし不適切なら、お手数をおかけしますがカテゴリの移動をお願いします。> 管理者様
たか14 さんが書きました:
Accessで共有している予定表をVBA等でThunderbirdのカレンダー(Lightning)へ出力できないでしょうか?
自分のLightningはGoogleと同期しているので、結果スマホでも予定を参照したいということです。
「Accessで共有している予定表」(A)と「自分のLightningはGoogleと同期している(予定表)」(B)という、相互に独立した2つのカレンダー/予定表があり、(A)にある予定の一部または全部を、(B)に取り込みたいということですか。
(B)については、Lightning に取り込めさえすれば Google カレンダーと同期できるので、(A)のデータを Lightning に取り込めれば事足りる、と......。
一般論としていえば、(A)の内容(一部または全部)を、Lightning と互換性のあるデータ形式で出力(エクスポート)するところまでなら、Access 上の VBA (Visual Basic for Applications) で工夫できるのではないかと思います。
しかしその先、出力したデータを Access 上の VBA から Lightning に書き込む方法は、思いつきません。
なぜなら、ご承知のように VBA は、Microsoft Office 製品専用の "より詳細なマクロ" といった位置づけのプログラミング言語だからです。
VBA で 直接 Thunderbird / Lightning 内部のコマンド(例えば、[ファイルからインポート] など)を操作することはできませんし、Thunderbird 上で VBA を動かすこともできません。
たか14 さんが書きました:
サンダーバードの「メール作成」まではVBAで動作させることはできたので、応用でVBAで「新しい予定」を立ち上げるまで行けないものかと。
VBA で Thunderbird を呼び出す(起動させる)Tips はしばしば見かけますが、たいてい Thunderbird のコマンドラインオプションを利用して、Excel や Access にある宛先や件名や本文を差し込んだメッセージ作成画面(Compose Window)を開くものです。本質的には、Excel や Access のデータをメールクライアントに引き渡すための方法であって、VBA でメールクライアントを自在にコントロールできるわけではないと思います。
一方、Thunderbird + Lightning 側の事情は次のようになります。
Thunderbird のアドオン(拡張機能)として動作する Lightning は、カレンダー/スケジュール管理アプリケーションの基本的な機能を備えています。
Lightning はアドオンなので、Lightning 単独での起動・呼び出しを実行することはできません。Thunderbird の起動が必須条件です。アドオンである Lightning の動作を定義したコマンドラインオプションがあるのかどうか、ぼくは寡聞にして存じません。
Lightning 自体のローカルにおけるスケジュールデータは、軽量データベースの一種である SQLite 形式で保持されています。
(異なるデータベース間で、任意のテーブルやレコード、フィールドなどを直接コピーできる方法があるのかもしれませんが、ぼくにはそのあたりの知識はありません。)
Lightning は、カレンダーデータのインポート・エクスポートに CSV 形式をサポートしてますし、カレンダー/スケジュールデータの標準フォーマットである iCalendar 形式にも対応しているので、同じように iCalendar 形式に対応している Microsoft Outlook など他のスケジュール管理アプリケーションとの連携・共有、データの交換も可能です(各アプリの独自機能除く)。
(参考)
・カレンダーのエクスポートや共有を行う | Thunderbird ヘルプ
https://support.mozilla.org/ja/kb/expor ... a-calendar「VBAにてLightningに予定を出力」の流れとしては、「Accessで共有している予定表」の内容を iCalendar 形式や CSV 形式で出力できる VBA を書き、必要な予定表データを ics ファイルや csv ファイルとして書き出すところまでは何とかなりそうですが、その後は Thunderbird / Lightning からこれらのファイルをインポートすることになりましょうか。
Lightning から iCalendar 形式や CSV 形式でエクスポートしたファイルの構造をご自身でよく把握した上で、「Accessで共有している予定表」にあるデータに対して Access VBA でどのような処理をすれば期待どおりの出力結果を導けるか、試してみてください。
おそらく本件での注意点は、
a. 「Accessで共有している予定表」がどのような仕様で作られているのか
b. 出力対象はテーブル全体か、個々のレコードか、フィールドか(a. と関連)
c. その内容を Lightning と互換性のあるデータ形式で出力する VBA の記述
―― などの条件にあると思われます。
この場合、Access とその上での VBA の動作は Microsoft 製品の取り扱いに関する質問になるため、VBA の記述方法などの質問は、その内容にふさわしいフォーラム(VBA 専用のフォーラムがあればそこが理想?)で質問したほうが、的確な回答が期待できるのではないかと思います。
Lightning 云々ではなく、1=「Accessで共有している予定表」から、2=任意のデータを、3=特定のフォーマットで書き出すための、VBA のソースに関する質問になるからです。
Access から予定表データを適切なフォーマットで出力した後、それを Lightning にインポートする際の質問なら、[掲示板トップ ≫ 相互ユーザサポート ≫ Calendar] が妥当な質問カテゴリかと思います。
とりあえず以上です。的外れな話になっていたらすみません。