• ベストアンサー

EXCEL HYPERLINKの関数表示を文字に変える方法?

urkの回答

  • urk
  • ベストアンサー率33% (18/53)
回答No.2

こんな感じのマクロで対応してはいかがでしょう。  例えば、 A列に表示したい文字、 B列にリンクしたいアドレスを書いておきます。 A    B 1 aaa  c:\abcd.pdf 2 bbbb  c:\cass.pdf 3 ssss  c:\asasd.pdf 4 あいうえ d:\asssd.pdf この状態で、A1をアクティブにして、下記のマクロを実行すると、A列のデータに対して B列のファイルがハイパーリンクされます。 ===== VBA マクロ ===== Sub sample()  dim link_fname as String While ActiveCell.Value <> "" link_fname=ActiveCell.Offset(0, 1).Value 'もし既にリンクが設定していた場合エラーになるので、前もってリンクのクリアーしておきます。 ActiveCell.Hyperlinks.Delete ActiveCell.Hyperlinks.Add Anchor:= _ ActiveCell.Offset(0, 0), _ Address:=link_fname ActiveCell.Offset(1, 0).Activate Wend End Sub これとは少し似た利用例で、作成したリストを使いリンクを張り、XML&XSLデータとしてはき出すVBAのマクロを以前作ったのが有るので、Upしています。  http://homepage2.nifty.com/urk/softindex.html もし良かったら、参照してみてください。

参考URL:
http://homepage2.nifty.com/urk/softindex.html
min128mini
質問者

お礼

すばらしい!こんな風にマクロを使用して、式が作れるのですね。 マクロは多少使った事があるのですが、私はまだ中身をよく理解できていません。 是非この機会に勉強したいと思います。 どうもありがとうございました。

関連するQ&A

  • EXCELのHYPERLINK関数の”文字列”について教えてください!

    HYPERLINK関数の「文字列」について 調べましたがさっぱりわからず、悩んでいます。 現在Sheet1のB1に =HYPERLINK("#Sheet"&ROW(A2)&"!A1",Sheet2!A1)  というように、Sheet2のA1にジャンプし、 Sheet2のA1が表示されるように、式を入力しました。 Sheet2のA1には文字が書かれています。 Sheet1のA1には何も書かれていません。 その式を連続コピーして、 B2を押すとSheet3のA1にジャンプし、Sheet3のA1の文字を表示する、 B3を押すとSheet4のA1にジャンプし、Sheet4のA1の文字を表示する、 というようにしたいのですが、 コピーすると =HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet2!A2) =HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet2!A3) このように、Sheet2のA2の値を返す というように コピーされてしまいます。 理想としては =HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet3!A1) =HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet4!A1) このように、A1は変わらず、シートの数字が1つずつ増えてほしいのです。 多少の関数はわかりますが、マクロはさっぱりわかりません。 関数を使うことで、こんなことは可能なんでしょうか? 説明が下手なんですが、どなたかわかられる方、教えてください(@_@)

  • Hyperlink関数をクリックしてくれるマクロ

    どなたか詳しい方教えていただけないでしょうか? ExcelのセルA1に以下のhyperlink関数を入れています。 =HYPERLINK(″#C″&MATCH(B1,C:C),″クリック″) 隣のB1に入れた数字を元にC列に存在する同じ数字先にジャンプするように関数を作ってます。 A1にできたリンクをクリックしたは、B1に入力されているものと同じ数字先のC列に飛ぶようにマクロを組みたいのですが、どうしたらいいでしょうか? ハイパーリンク関数がマクロに組み込めないのと色々調べてみましたがうまくいかないのでお手上げです。 どなたか詳しい方教えていただければと思います。 どうぞよろしくお願いします!

  • Hyperlink関数をクリックしてくれるマクロ

    こんにちわ! どなたか教えてくださいませんか? EXCELのセル“A1”にHyperlink関数が入れてありまして、 隣のセル“B1”に入れた文字を組み込んで、URLを生成し、リンクを作るようになっています。 こんな感じです。   =Hyperlink("http://●●●"&[B1]&"●●●/") それで、B1に文字を入れたら、自動的にそのリンク先を開くように、 つまりは、A1にできたリンクをわたしの代わりにクリックしてくれるようなマクロを作りたい のですが、どうすればいいでしょうか? いろいろやってみたのですが、どれもエラーになってしまいまして。 どうかよろしくお願いいたします。

  • マクロにてHYPERLINKのアドレスの取得方法を教えてください。

    マクロにてHYPERLINKのアドレスの取得方法を教えてください。 HYPERLINK関数を駆使してリンクを作っています。 =HYPERLINK(CELL("address",INDEX([○○○.xls]△△△シート!$1:$65536,MATCH("文字列",[○○○.xls]△△△シート!$B:$B,),MATCH("文字列",[○○○.xls]△△△シート!4:4,))),表示文字) という感じで別Excelファイルの行と列をMATCH関数を使いアドレスを作成しています。 出来たセルにマウスカーソルを持っていくと [○○○.xls]△△△シート!$AJ$114 アドレスが表示されます。 クリックするとちゃんと飛べます。 アドレスの表示を調べてみたところ Range("A1").Hyperlinks(1).Address というように記述する事で取得出来ると書かれていたので早速試してみたのですが インデックスが有効範囲にありません。と表示されてしまいます。 アドレスを取得するにはどうしたらいいのでしょうか?

  • HYPERLINK関数でリンク先が入力文字によって変わるようにしたい

    エクセル2003にて、1つのブック内でハイパーリンクを使用したいです。 あるシートのB7にHYPERLINK関数を入力しようと思います。 B4に文字を入力します (1)B4に東京と入力する (2)B7に東京と表示され、クリックすると東京のシートへ飛ぶ (1)B4に大阪と入力する (2)B7に大阪と表示され、クリックすると東京のシートへ飛ぶ このような事はできますか?? また、シートは複数あり、入力文字はリスト入力なので、必ずシート名と同じです。   わかるかた教えて下さい。よろしくお願いします。

  • エクセルのhyperlink関数を使って、次のように入力したいと思って

    エクセルのhyperlink関数を使って、次のように入力したいと思っています。 =HYPERLINK("http://www.aaa.com/1",1) =HYPERLINK("http://www.aaa.com/2",2) =HYPERLINK("http://www.aaa.com/3",3) こういった感じで、連続いくつも入力します。 関数のカンマの後ろの数字については、A1+1 と入力して、セルの右下にマウスを移動させそこからドラッグすればすぐに入力できますが、カンマの前のURLの数字の部分についても連動させたいのです。 どの様にすればいいのでしょうか?

  • ExcelのワークシートをPDF変換するとハイパーリンク情報が消えてしまいます

    Excel2003でセルにURLを直接入力してツールバーのPDF MakerでPDFに変換した場合は問題なくハイパーリンクが作成できるのですが、 =HYPERLINK("http://oshiete.watch.impress.co.jp/","教えて") の様にHYPERLINK関数を使用するとPDF上では青字にアンダーライン表示になるものの、ハイパーリンクができません。 どうしたらExcelで関数を使用しつつ、PDF上でハイパーリンクを実現できるのでしょうか? ご存知の方、いらっしゃいませんか? ちなみに関数を使用していなくてもExcel2003上のURLを登録したセルで右クリック→「ハイパーリンクの編集」→「表示文字列」でURLを"教えて"に変更した場合でも同様にPDF上でハイパーリンクできませんでした。 環境は下記の通りです。 Windows XP SP3 Excel2003 SP3 Adobe Acrobat 8 standard

  • Hyperlink関数 元データ削除

    Excel2010 Hyperlink関数で以下のようにハイパーリンクを設定しました。  A列:(パス入力)  B列:(別名入力)  C列:=Hyperlink(A列,B列) C列に作成されたハイパーリンクを有効な状態で、 元データ(A列、B列)を削除する事は可能でしょうか?

  • Excelのhperlink関数で作ったモノをハイパーリンクに置き換えたい

    Excel2007を利用しています。 A1にSONY ハイパーリンクの挿入で文字列SONY、アドレスhttp://www.sony.co.jp B1に=hyperlink("http://www.sony.co.jp","sony") と入っているとします。B1の形式を全てA1の形式に変換したいと思っていますがどのようにやればよいかわかりません。 Hyperlink関数を使った方がいろんな面で便利とは知っているのですが、B1のhyperlink関数からA1のハイパーリンク挿入への変換を教えていただきたく思います。B列には数百社のhyperlink関数で定義された企業名があるのですが、それをAの形式に手動でなおすには時間が恐ろしくかかってしまいます。よろしくお願いいたします。

  • EXCELマクロでセル関数パラメータに変数値を指定

    EXCELマクロで、セルにHYPERLINK関数の式を設定するマクロを作っています。 HYPERLINK関数のパラメータにはマクロ内で定義した変数に入れた値を指定したいのですが、 値ではなく変数名がそのままパラメータに指定されたHYPERLINK関数の式になってしまいます。 例) Sub ハイパーリンク設定マクロ() w_aaa = "C:\test\test.xls" w_bbb = "test.xls" ActiveCell.FormulaR1C1 = "=HYPERLINK(w_aaa,w_bbb)" End Sub 上記マクロで作成された式 =HYPERLINK(w_aaa,w_bbb) 期待する式 =HYPERLINK("C:\test\test.xls","test.xls") 対処方法がお分かりになる方がおりましたら、 ご教授願います。よろしくお願いします。