仕事ではOutlookをメールクライアントとして使っていますが、タスクやToDoの管理には使いたくありません。(代わりにプレーンテキストファイルとEmacsのorg-modeを使っています。) 多くのToDo項目は受信トレイのメールから始まっているので、これらのメールを参照する必要があります
クリックされたときにOutlookで特定のメールを開くリンク(URL)を作成する巧妙な方法はありますか?
77 None 2009-11-17
Outlookではちょっとしたコード、Emacsではちょっとしたコードでこれができます
まず、Outlook 2007を使用している場合は、レジストリの追加でOutlookのURLを有効にする必要があります。手順とレジストリファイルは、こちら David Tanの礼儀で確認できます
次に、このマクロをOutlookに追加すると、現在のメールメッセージのGUIDを取得し、Org-Modeリンクを作成してクリップボードにデポジットします
'Adds a link to the currently selected message to the clipboard
Sub AddLinkToMessageInClipboard()
Dim objMail As Outlook.MailItem
Dim doClipboard As New DataObject
'One and ONLY one message muse be selected
If Application.ActiveExplorer.Selection.Count <> 1 Then
MsgBox ("Select one and ONLY one message.")
Exit Sub
End If
Set objMail = Application.ActiveExplorer.Selection.Item(1)
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][MESSAGE: " + objMail.Subject + " (" + objMail.SenderName + ")]]"
doClipboard.PutInClipboard
End Sub
koushikがコメントで指摘しているように、doClipboard.SetText
の部分を拡張して、異なるアイテムタイプを区別することができます
If objMail.Class = olMail Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][MESSAGE: " + objMail.Subject + " (" + objMail.SenderName + ")]]"
ElseIf objMail.Class = olAppointment Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][MEETING: " + objMail.Subject + " (" + objMail.Organizer + ")]]"
ElseIf objMail.Class = olTask Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][TASK: " + objMail.Subject + " (" + objMail.Owner + ")]]"
ElseIf objMail.Class = olContact Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][CONTACT: " + objMail.Subject + " (" + objMail.FullName + ")]]"
ElseIf objMail.Class = olJournal Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][JOURNAL: " + objMail.Subject + " (" + objMail.Type + ")]]"
ElseIf objMail.Class = olNote Then
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][NOTE: " + objMail.Subject + " (" + " " + ")]]"
Else
doClipboard.SetText "[[outlook:" + objMail.EntryID + "][ITEM: " + objMail.Subject + " (" + objMail.MessageClass + ")]]"
End If
もう少しで、このちょっとしたLispをemacs lispディレクトリに追加して、Outlookのリンクを有効にします
;;; org-outlook.el - Support for links to Outlook items in Org
(require 'org)
(org-add-link-type "outlook" 'org-outlook-open)
(defun org-outlook-open (id)
"Open the Outlook item identified by ID. ID should be an Outlook GUID."
(w32-shell-execute "open" (concat "outlook:" id)))
(provide 'org-outlook)
;;; org-outlook.el ends here
最後に、Outlookのリンクコードを含むように.emacsファイルを更新します。org-modeを設定した後、どこかに追加してください
(require 'org-outlook)
これでマクロを呼び出すことができ(Outlookのツールバーに追加して素早くアクセスできるようにしました)、Emacsでメールへのリンクを素早く作成することができるようになりました
ドキュメントストア間でメッセージを移動すると GUID が変更されるため、Exchange サーバー上にあるメッセージの GUID を取得してからローカルの PST ファイルに移動するとリンクが変更されます。GUID を取得する前にメッセージを移動してください
38 None 2010-01-24
簡単なvbscript(download)を書くことで解決しました
Set Outlook = CreateObject("Outlook.Application")
Set SelectedItem = Outlook.ActiveExplorer.Selection.Item(1)
Set Shell = CreateObject("Shell.Application")
Shell.ShellExecute "cmd", "/c echo Outlook:" & SelectedItem.entryID & " | clip", "", "runas", 1
Outlookで現在選択している要素(電子メール、カレンダーエントリ、…)のリンクをクリップボードにコピーします
Outlook:176CZREX7A79L9TG1T0AJ6HQ8DEBLTFS60HUQYKT2IXBBZ9ZZVA73MNRYVRWRL4RY0VCPQE1IB5GAWY0D8OSMOB4IFDV5OMG9NX2BBKGFA3IWSD62UCNVK0HD9GA80BIDZSBCZL7INCT
あなたもHTTPリンクを取得するようにリダイレクトサービスを使用することができます(Outlook:
のリンクはどこかに貼り付けた場合、おそらく自動的に検出されませんが、HTTPリンクはありますので)(download)、ちょうど最後の行を置き換えるだけです
Shell.ShellExecute "cmd", "/c echo https://api.fnkr.net/goto/jsclient/raw/?closeAfter=500#Outlook:" & SelectedItem.entryID & " | clip", "", "runas", 1
最初にOutlook:
のリンクを機能させる必要があるので注意してください。 http://www.slipstick.com/problems/outlook-missing-outlook-protocol/(下にスクロールして “Do It For Me”)
Outlook 2010でテストしました
8 fnkr 2014-10-22
あなたもhttp://www.teamscope.com/otherpro/utilities.asp#linkerにしたいかもしれません
これがマーケティング・ドリブル
Linker™ for Windows® は、Outlook のアイテムやフォルダ、Windows エクスプローラのファイルやフォルダへのハイパーリンクを作成します。Linker™ for Windows® は、システムトレイのアプレットで、ハイパーリンクを Windows のクリップボードに配置します。ハイパーリンクは、Microsoft Office文書、Webページ、電子メールメッセージ、またはハイパーリンクをサポートする文書に貼り付けることができます
晴れた南アフリカからのご挨拶
3 None 2009-12-04
特定のメールを参照するというのはよくわかりませんが、お使いのシステムによってはToDo項目と同じ場所にメールをコピーすることができるかもしれません。メールをフォルダやデスクトップにドラッグ/ドロップするだけで、通常のファイルとして扱えるメールのコピーを作成してくれます
.docや.txtよりも「高度な」ファイルを使用している場合は、このOutlookメッセージファイルにリンクすることができます
1 Paxxi 2009-11-17
私は、Outlook Itemの内容をシステムのクリップボードにコピーしてから、Orgモードのノートに引っ張っていくのが好きです
1 Raymond Zeitler 2012-06-19
ある種のカスタムコードなしではありません。OutlookのURIは、Outlookの中にあるフォルダにたどり着くことができますが、それはそれについてのことです。あなたのリンク戦略に沿った巧妙なファイリング戦略を考え出す必要があるでしょう
0 squillman 2009-11-17
おそらく、あなたの要求は私とは違うのでしょう
Outook 2013 > メッセージタブ(通常表示) > ‘アクション’ボタン > ブラウザで表示します
そうすると、ブラウザからそのリンクが出てくるんです
それが助けになることを願って
0 Frank 2014-06-19
あなたは、OneNoteにOutlookの電子メールをコピーすることができます(黄色の文字のアイコンとして来る)し、右クリックして’段落へのリンク’を選択し、リンクを使用して動作することができます別のドキュメントにリンクを貼り付けます
しかし、いずれにしても、マイクロソフトはこの電子メールへのリンクを標準機能にすべきでした。それはLotus Notesの便利な機能でした
0 Umiboshi 2015-05-22
私はタスクを管理するために Wunderlist を使用していますが、Wunderlist アドイン for Outlook を使用すると、メールメッセージから直接新しいタスクを作成することができ、Wunderlist は自動的にタスクノートに元のメッセージへのリンクを作成します。いくつかの注意点があります
- 私はいつも最初にフォルダにメッセージを移動させていますが、後で別のフォルダに移動させるとURLが切れてしまうので(前回確認しました)、最初にフォルダに移動させています
- Outlookデスクトップ用のアドインがあっても、リンクが含まれていないようなので、タスクを作成したいときはWeb上のOutlookを使っています
- 私は、企業のメールアカウントを使用してOffice 365のOutlook on the Webでのみこれを試したことがあります。私は、それが消費者用のOffice 365アカウントでも同じように動作すると仮定していますが、それを試していません
- Wunderlistを使っていなくても、サインアップしておけば、必要な時にURLを生成して使うことができます
そして、私はMicrosoftで働いていますが、OutlookやWunderlistのチームとは関係ありません
0 AJSkew 2016-09-14
私は上記の 受諾された回答 にコメントを入れるほどの評価を得ていませんが、私が (emacs) StackExchange に投稿した @user25995 さんの優れた回答を修正するために、相互参照を入れたいと思いました
そこに投稿した質問に対するコメントに基づいて、(非推奨の)org-add-link-type
の使用をorg-link-set-parameters
に変更し、HTMLエクスポートバックエンドが適切にフォーマットされた<a href="outlook:...">
リンクタイプを提供するようにexport:
関数を追加しました
0 kwoodham 2017-10-04
Webアプリ(Office 365)では、メッセージを右クリックしてタスク/To-doを作成することができます。その後、タスクの中で右クリックして、メッセージへの埋め込みリンクを取得することができます。詳細については、以下にリンクされている関連する回答を参照してください
Microsoft Outlook 365 Webメールのメールへのリンク
0 Scott H 2020-10-08