• ベストアンサー

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つずつ増えてほしいのです。 多少の関数はわかりますが、マクロはさっぱりわかりません。 関数を使うことで、こんなことは可能なんでしょうか? 説明が下手なんですが、どなたかわかられる方、教えてください(@_@)

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

  • ベストアンサー
回答No.1

HYPERLINK関数同様、INDIRECTを使います =HYPERLINK("#Sheet"&ROW(A2)&"!A1",INDIRECT("Sheet"&ROW(A2)&"!A1"))

hamuta356
質問者

お礼

そのままコピー&ペーストさせていただきましたところ、 私の理想どうりのものができました!! INDIRECT関数なるものを初めて使用しました。 これから勉強したいと思います。どうもありがとうございました!

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

リンク先と同様に=HYPERLINK("#Sheet"&ROW(A2)&"!A1","Sheet"&ROW(A2)&"!A1")として下方向にコピーで如何でしょうか。

hamuta356
質問者

お礼

mu2011様の方法で試したところ、”SHEET!A1”と表示されてしまうようです。 これから関数をもっと勉強していきたいと思います。 ご回答どうもありがとうございました!!

関連するQ&A

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

    EXCEL2002を使っています。 現在A1のセルに=HYPERLINK("C:\My Documents\1.xls")という式を入れています。A2のセルには左記式と同じでファイル名が2.xls、以降順番にA2000(2000.xls)まで同様の式を入れています。 現在、A1からA2000のセルまで関数の式が表示されてしまっているのですが、できれば関数の式は見せずに任意の文字を表示させ、さらにその文字をクリックすればリンクがはられるようにしたいのです。 文字を先に入力してメニューの挿入→ハイパーリンクとやれば希望通りの物ができるのですが、2000件ものマニュアル作業は避けたいと思います。 HYPERLINKの式を先に入力した場合でクリックのできる文字表示にする良い方法はないでしょうか?

  • エクセルのHYPERLINK関数に文字列を入力したい

    EXEL2003です。 A列にURLのリストがあります。 A1のURLがhttp://xxx/yy/zだとすると B1に =HYPERLINK("http://xxx/yy/z"E6,"登録") と入れたいのですが、どうすればできるでしょうか? 手動でやると大変です。 =HYPERLINK(A1,"登録") とすると、別シートにコピーしたときに参照先がなくなってしまい使えません。 簡単にURLを入れる方法がありますか? よろしくお願いします。

  • 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で飛べない?

    ExcelのHYPERLINK関数で、ジャンプできないケースがあります。 × =HYPERLINK("#テスト(A)!A1","●") 作業というシートと、テスト(A)というシートを作り、作業シートから上記のジャンプ命令で、テスト(A)シートに飛ぼうとすると「参照が正しくありません」というエラーが出ます。 ○ =HYPERLINK("#テストA!A1","●") (A)の括弧を消し、テストAというシートにするとジャンプできます。 半角()でもダメで、<>≪≫でもダメでした。 シートに括弧があると対応していないのでしょうか? 括弧があってもジャンプできるような回避策があったら教えて下さい。 Excelのバージョンは2002です。

  • マクロにて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の数字の部分についても連動させたいのです。 どの様にすればいいのでしょうか?

  • エクセル関数内の行番号を同じにしたい。

    A列にYesかNoを選ぶセルがあり、Yesの場合は、隣の列(B列)に "ここをクリック" という文字列を出し、別シートの同じ場所に飛び、そして、Noの場合は、隣の列(B列)に "OK"という文字列を出して終わり。ということがやりたいです。 1.B1に以下の関数を入力しました。 =IF(A1="Yes", HYPERLINK("#sheet2!A1","こちらをクリック"),IF(A1="No","OK"," ")) 2.これをコピーしてB2以下に反映しようと考えました。ですが、 リンク先の"#sheet2!A1"のA1の行番号が以下のように、増えてくれません。 =IF(A2="Yes", HYPERLINK("#sheet2!A1","こちらをクリック"),IF(A2="No","OK"," ")) 3.コピーするだけで、"#sheet2!A1"の部分のセルが1つ繰り上がるように(この場合、A1からA2に)するには、どのようにしたらいいのでしょうか? 4. 3.が出来ない場合、何か他の方法を教えて頂きたく。 5.当方、VBAの知識がないので、マクロを組みたくても組めないのが現状です。 以上よろしくお願いします。

  • エクセル関数でおしえてください

    Aのセルに「する」「しない」のどちらかを入力するとして、 「する」と入力すると、Bのセルに「○」、 「しない」と入力するとCのせるに「○」、 と言う風に、表示する文字は「○」で同じでも、表示させるセルを変えたい場合、どの関数式をかいたらいいのか教えてください。 マクロはできれば使いたくないので、関数でお願いいたします。

専門家に質問してみよう