【VBScript】Outlookのリンク切れに負けない!

この記事は約3分で読めます。

プロジェクト案件に身をおいていると、使えるツールというのも限られてきます。

メールだと大体、僕がよく使うのは『Microsoft Outlook』

正直なこと言うと、メールソフトに全然こだわりなくて、何でもいいと思ってます。

プロジェクト案件だと、共有サーバ上のパスをメールでやり取りってよくある。

この資料どこにあるのー??

とか、

それはココに置いておいてねー!

とかね。

その中で、僕が唯一許せないのがこれ!

> <D:\Shortcut\01_befor
> e\HelloWorl
> d.txt>

メールの引用符でリンク飛べないじゃん…

これはOutlookだけの話ではないけどね。

イライラが爆発した結果、VBScriptで少し作りました。

この記事の著者
のら

お家大好きSE

イエスキ

yeskey

プロフィール

都内で働くシステムエンジニア
素早く家に帰るために日々技術を磨いています。
学んだ技術をわかりやすく紹介します! プロフィール詳細

スポンサーリンク

コード

Dim ClipboardText
Dim DirPath
Const ReplacePattern = "<|>|<|>| | |\r\n"  '置換対象の文字

Call GetClipboardText
Call ReplaceText
Call OpenPath

'クリップボードから情報取得
Sub GetClipboardText()
    Dim objHtml
    Set objHtml = CreateObject("htmlfile")

    ClipboardText = Trim(objHtml.ParentWindow.ClipboardData.GetData("text"))
    Set objHtml = Nothing
End Sub

'正規表現で置換
Sub ReplaceText()
    Dim objRegExp
    Set objRegExp = CreateObject("VBScript.RegExp")
    With objRegExp
        .Pattern = ReplacePattern
        .IgnoreCase = True
        .Global = True
    End With

    'クリップボードの値から余分な文字を削除
    DirPath = objRegExp.Replace(ClipboardText , "")
    Set objRegExp = Nothing
End Sub

'既定のアプリケーションで開く
Sub OpenPath()
    CreateObject("Shell.Application").ShellExecute DirPath
End Sub

コピペして適当なVBScriptのファイル作ってください。
VBScriptの作り方は、この記事に詳しく書いてあるので、わからなかったら参照して!

使い方

  1. 上のリンクみたいになっているのをコピー!
  2. 作ったVBScriptをダブルクリック!

これだけ!

ただ、毎回ダブルクリックで起動は面倒...

そう思ったら、こんなを使うとコピーした後はキーボードのみで開けます!

ちょっとした問題点

フォルダ名とかに、『スペース』や『<』、『>』なんかがあると、それも消えちゃう。

その場合は 置換対象の文字 をいじればうまくいくと思います。

最後に

最後まで、見ていただきありがとうございます。
ツールとしてもそうですが、部品としても使える要素あるので、自分のやりたいことの一部として使っていただけたら嬉しいです。

  • クリップボードから情報取得
  • 正規表現の使い方
  • 規定のプログラムで開く

タイトルとURLをコピーしました