好きこそものの上手なれ

他人から見れば、下手の横好きですが、そっと見守ってください。

Excel VBA これで分かった 複数ダブルクォーテーションの意味


テレワークが減ってきているのか、今週の月曜日(2/6)から出勤時に渋滞に巻き込まれるようになりました。早めに家を出て心の余裕を持ち運転したいですね。


早速ですが、VBAでハイパーリンクを作成する際にダブルクオーテーションが複数付きますが明確な規則があります。


文字列を表示させるには、少なくとも2つダブルクォーテーションが要ります。
そして、ダブルクォーテーションを表示させるには、前にダブルクォーテーションを付ける必要があるので、一つのダブルクォーテーションを表示させるのに4つ必要なのが分かります。


要は
ActiveSheet.Range("A1").Formula = "=HyperLink(●https://niche.muragon.com/●, ●好きこそものの上手なれ●)"
●のところを"と書きたいのですが、文字列の中では""とダブルクォーテーション2つが必要になるということです。


練習として、"=HyperLink(""" & URL & """,""" & Title & """)"について説明します。
細かく分解(&で文字列を連結しているだけですので、それでスプリット)すると、


"=HyperLink("""
URL
""","""
Title
""")"
の5つに分かれます。


文字列の最初と最後の”を取り除くと
=HyperLink(""
URL
"",""
Title
"")
となります。


こうなるとそれぞれ、2つのダブルクォーテーションしか残りません。
2つのダブルクォーテーションは表示では一つのダブルクォーテーションとなり、規則通りになっています。





Option Explicit


Sub ハイパーリンク作成()
    Dim URL As String
    Dim Title As String


    URL = "https://niche.muragon.com/"
    Title = "好きこそものの上手なれ"
    
    ActiveSheet.Range("A1").Formula = "=HyperLink(""" & URL & """,""" & Title & """)"


End Sub



VBAでおススメの本はあまりなかったのですが、私はこの本は色々と役立ちそうなので選びました。
オフィスの達人〈5〉VBA活用術―Excel/Word/Access/PowerPoint/Outlook Office 2003対応