• ベストアンサー

EXCEL上URLデータに一括ハイパーリンク

他のデータベースからEXCEL2003シートに移した URLデータが2万件ほどあります。 現状では、そのURLの入った2万個のセルがハイパーリンク化 されていません。 すべてのセルを一括でハイパーリンク化する方法はないでしょうか。 入力オートフォーマットの設定で、 現在は、一旦1件ずつ入力状態にしたあとエンターすると 自動でハイパーリンク化するのですが、 件数が多いのでとてもやりきれないのです。 (ハイパーリンクを一括で外す方法は見つかったのですが、 その逆がわかりません・・・)

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

  • ベストアンサー
  • venzou
  • ベストアンサー率71% (311/435)
回答No.3

HYPERLINKと言う関数がありますので、それを利用した方法。 (Excel2000で動作確認) A列にURLがあるとすれば、他の列に下記の数式を入れます。 =HYPERLINK(A1,A1) ヘルプをご覧になれば分かると思いますが、 1つ目の引数がリンク先(URL)で、2つ目がセルに表示する文字です。 この方法は簡単ですが、URLが入ったセルに直接リンクを貼る事は出来ません。

JUN-KUMA
質問者

お礼

おーっ! まさに思い通りの結果を出すことが出来ました。 HYPERLINK という関数があることは知りませんでした。 本当にありがとううございました。 助かりました。

その他の回答 (2)

  • chem_taro
  • ベストアンサー率32% (33/101)
回答No.2

#1です。 よく読んだら、URLの入ったセルにリンクを貼るようですね。 であれば、以下のコードでOKだと思います。 Sub url_set() oColumn = Selection.Column oRow = Selection.Row owidth = Selection.Columns.Count ohight = Selection.Rows.Count For i = 0 To owidth - 1 For j = 0 To ohight - 1 setdata = Cells(j + oRow, i + oColumn) If setdata <> "" Then Cells(j + oRow, i + oColumn).Hyperlinks.Add Anchor:=Cells(j + oRow, i + oColumn), Address:=setdata End If Next j Next i End Sub コード入力後、範囲指定してマクロを実行すればハイパーリンクが貼り付けられます。

JUN-KUMA
質問者

お礼

VBAですね。 いつかは勉強しようと思っていたので張りきってやってみます。 丁寧な回答を何度も本当にありがとうございました。

  • chem_taro
  • ベストアンサー率32% (33/101)
回答No.1

機能としては見あたらなかったので、マクロを組んでみました。 Sub url_set() urlsheet = InputBox("URLが保管されているシート名は?") oColumn = Selection.Column oRow = Selection.Row owidth = Selection.Columns.Count ohight = Selection.Rows.Count For i = 0 To owidth - 1 For j = 0 To ohight - 1 setdata = Sheets(urlsheet).Cells(j + oRow, i + oColumn) If setdata <> "" Then Cells(j + oRow, i + oColumn).Hyperlinks.Add Anchor:=Cells(j + oRow, i + oColumn), Address:=setdata End If Next j Next i End Sub ツール(T)→マクロ(M)→Visual Basic Editor(V) でMicrosoft Visual Basicを開きます。 そして、プロジェクトというウインドウにSheetが縦に並んでいると思いますので、どれでもいいのでダブルクリックしてください。 すると、そのSheetのコードを記述するウインドウがでますので、上のコードをコピー&ペーストしてください。 終わったらMicrosoft Visual Basicを閉じて、Excelのウインドウに戻ります。 使い方ですが、まず準備として別シートにURLを入力しておきます。この際に、貼り付けるセルとURLのセルを一致させておいてください。(A1にはりつけるURLは別シートのA1に記載します。) URLを貼り付けたいところを範囲選択して ツール(T)→マクロ(M)→マクロ(M) で、Sheet○_url_setをダブルクリックすれば、シート名を聞いてきますので、URLをセットしたシート名を入力すれば、URLをはりつけます。(対応セルにURLがない場合は無視します) 突貫作業なので何か問題がありましたら言ってください。

関連するQ&A

専門家に質問してみよう