• ベストアンサー

Excelテキストボックス内の文章リンクについて

Excel2010 テキストボックス内の文章に対してリンク設定は可能でしょうか? 1つのテキストボックス図形内に文章を書き込んでいます。 その中で、 http:// http:// とあるのですが、上記のURLへ対して個別にリンクする方法はないでしょうか? もしくは何か良い方法があればご教授いただけると助かります。 よろしくお願いいたします

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

テキストボックスの中のURLなどが複数記述があって、その何番目を実行するのか指定できないので、普通の操作などでは質問のことは出来ないでしょう。 ーー VBAのことが判らないなら下記を無視して。 私も経験は少なく、下記で満足しているわけではない(不適当個所があるかも)が ワークシート(Sheet1)にテキストボックスを1つ貼り付け。(この質問はワークシートにテキストボックスを貼り付けるのか、UserForm1なのか書いてない。質問者が経験不足で、その意識が無いのだろう) 右クリックして、テキストボックスの編集で、テキストに2行 Aの場合はhttp://okwave.jp/qa/q7064427.htmlに Bの場合はhttp://okwave.jp/qa/q7064026.html (前もって改行のためにプロパティのMultiLineをTRUEにしておくこと) を入れる(これはあくまで例文です)。 テキストボックスの編集状態を脱する。 Sheet1のテキストボックスのTextBox1_DblClickイベントに Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) Dim h(10) s = 1 k = 1 x = TextBox1.Text For i = 1 To 10 p = InStr(s, x, "http") q = InStr(s, x, "html") If p = 0 Then Exit Sub h(k) = Mid(x, p, q + 4 - p) MsgBox h(k) '---- URL = h(k) Set IE = CreateObject("InternetExplorer.Application") With IE .Navigate (URL) .Visible = True End With '---- k = k + 1 s = q + 4 Next i 'Set IE = Nothing End Sub ーー 上記コードでは、http(やHttps)で始まり、htmlで終わる部分をURLと看做している。 ーーー これでテキストボックスをダブルクリックすると、順次WEBが開く。 全部が順次開いてしまう、つくりになっている。 URLは9個までにしている。 「URLの何番目だけを開く」も、その何番目を指定するパラメーターを与える良い方法があれば(、何か良い仕組みがあれば)、上記プログラムを少々変えれば可能と思う。

ryoryu2002
質問者

お礼

どうもありがとうございました。

その他の回答 (4)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.5

No3の回答者です。 失礼しました。 質問をよく見てみたら、WordではなくExcelのテキストボックスの質問だったのですね。 Excelでのハイパーリンクは基本的に文字単位では設定できないので(セル単位やオブジェクト単位になります)、残念ながらご希望のような設定はできません。 早とちりをして回答してしまったことをお詫びします。

ryoryu2002
質問者

お礼

どうもありがとうございました。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

質問内容を理解されている方もいらっしゃるようですが、私にはどのようなことが問題になっているのかよくわかりません。 テキストボックス内に2つのURLが入力されていて、それをそのまま自動的にハイパーリンクにしておけば(入力時のオートフォーマット)、Ctrl+クリックでそれぞれのリンク先に移動できると思うのですが、ご質問内容と違うのでしょうか?

ryoryu2002
質問者

お礼

どうもありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

No.1です! たびたびごめんなさい。 前回の方法では二つのリンクは設定できませんでした。 検証せずに投稿してごめんなさい。 苦肉の策ですが、他の方法として、 (1)オートシェイプの四角を一つ挿入 (2)挿入したオートシェイプの上に二つのテキストボックスを貼り付ける (3)それぞれのテキストボックス上で右クリック → ハイパーリンク → リンク先を設定 これで個々のテキストボックスで違うリンク先が設定できると思います 以上、この程度しか思いつきませんが、他によい方法があればごめんなさいね。m(__)m

ryoryu2002
質問者

お礼

どうもありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 外していたらごめんなさい。 テキストボックス内の文章はURLでなく他の文章でも可能ですが・・・ (「○○へリンク」等の文章など) とりあえず、何らかの文章(もちろん二つのURLでもOK)を入力  → 一つ目の文章を範囲指定 → 右クリック → ハイパーリンク  → 「リンク先」は「ファイル・WEBページ」を選択 → 「アドレス欄」にリンクしたいURLを! 二つ目の文章にも同様の操作を行います。 これで何とか希望に近い形にならないでしょうか?m(__)m

ryoryu2002
質問者

お礼

どうもありがとうございました。