4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

以下の日程でご都合いかがでしょうかメーカー on Outlook

Posted at

「便利すぎて震える」と声があがっている日時文字列整形ツールですが、
以下の日程でご都合いかがでしょうかメーカー

ビジネスで使う上ではOutlookが標準で、自分の予定を見ながら会議セットをする人も多いはずです。(はずです)
でもなんやかんやで、会議案内を使わずに複数候補だしてまず伺い立てることもあるはずです。(はずです。ない企業はGo Back。)

というわけで以前から使っていましたが、Outlook予定表で選択した時間帯をクリップボードにコピーしてくれるマクロを投下します。

Outlook予定表上で、対象の日時を選択して、

image.png

マクロ実行でこんな感じにコピーされます。
(マクロはショートカット登録しておくと便利です)

image.png

Sub ▼選択時間を文字列コピー()
    Dim l_calendar As Outlook.Folder
    Set l_calendar = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar)
    Dim l_appointments As Outlook.Items
    Set l_appointments = l_calendar.Items
    Dim objAppt As AppointmentItem
    Dim CB As New DataObject ' Microsoft Forms 2.0 Object Libraryを参照設定が必要。ないときはc:\Windows\System32\FM20.DLL
    Dim buf As String
        
    With ActiveExplorer.CurrentView
        ' 予定表Viewでない場合は終了
        If TypeName(ActiveWindow) <> "Explorer" Or .ViewType <> olCalendarView Then Exit Sub
        
        '予定表でアイテムを選択していたら終了
        If ActiveExplorer.Selection.Count > 0 Then Exit Sub
        
        If .SelectedStartTime <> .SelectedEndTime Then
            buf = Format(.SelectedStartTime, "m/d(aaa)  hh:nn") & " ~ " & Format(.SelectedEndTime, "hh:nn")
            CB.SetText buf        ''変数のデータをDataObjectに格納する
            CB.PutInClipboard     ''DataObjectのデータをクリップボードに格納する
        End If
    End With
End Sub

ご活用ください。

4
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?