MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) https://forums.mozillazine.jp/viewtopic.php?f=24&t=16478 |
ページ 1 / 1 |
作成者: | たか14 [ 2017年1月19日(木) 16:49 ] |
記事の件名: | VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) |
お世話になっております。 Accessで共有している予定表をVBA等でThunderbirdのカレンダー(Lightning)へ出力できないでしょうか? 自分のLightningはGoogleと同期しているので、結果スマホでも予定を参照したいということです。 エクセルでのGoogleカレンダーへのモジュール?はネットで見つかったのですが、どうも古いのか動作せず。 サンダーバードの「メール作成」まではVBAで動作させることはできたので、応用でVBAで「新しい予定」を立ち上げるまで行けないものかと。 *要はAccessの予定をLightningに転記するのが面倒ということです。 日時、時間、件名、詳細、、、 アドバイスよろしくお願い致します。 |
作成者: | 偶然的通行人 [ 2017年1月21日(土) 15:58 ] |
記事の件名: | Re: VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) |
※質問するときは、「フォーラムの利用に関するご案内」、とりわけ「質問するときは」に目を通し、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] が妥当な質問カテゴリかと思います。 とりあえず以上です。的外れな話になっていたらすみません。 |
作成者: | たか14 [ 2017年1月23日(月) 14:42 ] |
記事の件名: | Re: VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) |
偶然的通行人様 返信ありがとうございます。 カレンダーカテゴリがあったのですね。初めて来たもので見落としていました。失礼致しました。 おっしゃる通りAccess→コマンドラインオプションでメールの立ち上げ(Accessの内容を投げる)ことは出来たのですが、 これを同じように「新しい予定」にコマンドラインオプション?を使ってAccessの予定内容を投げて、Lightning側で手動で「保存して閉じる」だけで満足なんです。 sPath = """C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe"" -compose " 上記で新規メールが立ち上がる sPath = """C:\Program Files\Mozilla Thunderbird\thunderbird.exe"" -Calendar " 上記のような記述で「新しい予定」が立ち上がればと思っているのですが、コマンドラインオプション?が存在するのかわかりません。 Calendarカテゴリで質問し直してみます。 ありがとうございました。 |
作成者: | 偶然的通行人 [ 2017年1月24日(火) 17:45 ] |
記事の件名: | Re: VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) |
たか14 さんが書きました: sPath = """C:\Program Files\Mozilla Thunderbird\thunderbird.exe"" -Calendar " 上記のような記述で「新しい予定」が立ち上がればと思っているのですが、コマンドラインオプション?が存在するのかわかりません。 かつて、スタンドアローンのカレンダー/スケジュール管理アプリケーションとして Sunbird が存在し、そのアドオン版としての Lightning でした。 Sunbird には一定のコマンドラインオプション(-calendar のような)がありましたが、Sunbird の開発はずいぶん前に終了しました。 現状では Lightning しか残っていませんが、Sunbird にあったようなコマンドラインオプションは実装されていないようです。 ざっと Bugzilla をあたっただけですが、次のようなバグがあり、一応 "ASSIGNED" のステータスが与えられています。 Bug 359807 - No command line switch to start Thunderbird with calendar view upon start-up https://bugzilla.mozilla.org/show_bug.cgi?id=359807 これを見ると、Lightning 向けのコマンドラインオプションに対するニーズはあり、どうにかしようという動きはあるみたいですが、現時点では未実装ということのように思えます。 こういう事情なので、「VBAにて」を前提とするなら、一番現実味があるのは「Accessで共有している予定表」の中の必要な項目を iCalendar 形式でエクスポートし、それを Lightning にインポートする手順かな、と思った次第です。 (参考) たか14 さんのニーズは満たせないと思いますが、考え方の参考まで......。 ・Lightbird https://addons.mozilla.org/ja/thunderbi ... lightbird/ このアドオンは、Lightning のカレンダー画面(のみ)を、Thunderbird のタブとしてではなく独立したウィンドウで表示させるもので、それに対するコマンドラインオプションが実装されています。つまり、Lightning + Lightbird をインストールした Thunderbird に対して、 ~ thunderbird.exe -calendar とコマンドラインオプション付きで実行することで、Lightbird で分離されたカレンダーウィンドウだけを起動させることができます。 ただし、[新しい予定] を開くことはできませんし、[新しい予定] 内の各項目に、Access からのデータを受け取ることはできそうにありません。 ですが、こういうことができるということは、Lightbird の仕組みを参考に、アドオン側で [新しい予定] を開くコマンドラインを(JavaScript で?)定義できれば、Access から投げられたデータを受け取って以後の処理をできる可能性はあるかもしれません。 たか14 さんが書きました: Access→コマンドラインオプションでメールの立ち上げ(Accessの内容を投げる)ことは出来た そのバリエーションで、VBA を使って「Accessで共有している予定表」を iCalendar 形式でメール本文として書き出せるのなら、それを受け取って開いた Thunderbird のメッセージ作成画面をいったん下書き保存し、[変換] -> [予定] で Lightning の予定として取り込む手順はできるかもしれません。一手間かかりますが、手作業で書き写すよりはマシかもしれませんね。 実際に自分で試したわけではありませんが、アイデアとして考えつくのは以上です。役に立たない話だったらすみません。 (オフトピ) たか14 さんが書きました: Calendarカテゴリで質問し直してみます。 管理者の方の判断によっては、このトピック自体を Calendar カテゴリに移動してくださると思います。 移動されないのなら、この場所で続けてもいいということなので、Calendar カテゴリに内容の重複した新トピックを作る意味はありませんよ。 |
作成者: | Cai [ 2017年1月26日(木) 16:17 ] |
記事の件名: | Re: VBAにてLightningに予定を出力(最終的にはGoogleカレンダーへ) |
偶然的通行人 さんが書きました: (オフトピ) たか14 さんが書きました: Calendarカテゴリで質問し直してみます。 管理者の方の判断によっては、このトピック自体を Calendar カテゴリに移動してくださると思います。 移動されないのなら、この場所で続けてもいいということなので、Calendar カテゴリに内容の重複した新トピックを作る意味はありませんよ。 管理人の Cai です。 外部アプリケーションとの連携という意味では、アドオンである Lightning だけでなく Thunderbird 本体側での挙動も関係してくるため判断に悩みましたが、アドオンを主体としたトピックと判断して Calendar カテゴリへの移動を行いました。 ユーザサポートより開発サポートの方が適切かもしれませんが。 |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |