Excel VBA 質問スレッド №247 (未解決)
HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 13:58:59 OS : Windows 10 EXCEL : Excel 2010
HyperLinkを組み込む際、
SubAddressの部分を変数によって
可変にするにはどういう書き方をしたらよいでしょうか?
参照ブック:同一ブック
参照シート:別シート
で、
1→2→3→4→5
6→7→8→9→10
11→12→13→14→15
・・・・・
という順に参照し、ハイパーリンクとしたいです。
探してるんですが、どうしても固定セルのものしか見つかりません。
何卒よろしくお願いします。
HyperLinkを組み込む際、
SubAddressの部分を変数によって
可変にするにはどういう書き方をしたらよいでしょうか?
参照ブック:同一ブック
参照シート:別シート
で、
1→2→3→4→5
6→7→8→9→10
11→12→13→14→15
・・・・・
という順に参照し、ハイパーリンクとしたいです。
探してるんですが、どうしても固定セルのものしか見つかりません。
何卒よろしくお願いします。
スポンサーリンク
[返信 1] Re : HyperLinkに変数を組み込むには?
投稿者 : ヘンリー 投稿日時 : 2021/05/16(Sun) 16:03:31
>1→2→3→4→5
>6→7→8→9→10
>11→12→13→14→15
何がこのように変化するのでしょうか?
行ですか?何かの値ですか?
>探してるんですが、どうしても固定セルのものしか見つかりません。
固定のセルのコードだけでも載せてもらうと、
回答がしやすいのですが…
文字列結合の「&演算子」について調べてみてください
>1→2→3→4→5
>6→7→8→9→10
>11→12→13→14→15
何がこのように変化するのでしょうか?
行ですか?何かの値ですか?
>探してるんですが、どうしても固定セルのものしか見つかりません。
固定のセルのコードだけでも載せてもらうと、
回答がしやすいのですが…
文字列結合の「&演算子」について調べてみてください
[返信 2] Re : HyperLinkに変数を組み込むには?
投稿者 : わ 投稿日時 : 2021/05/16(Sun) 16:21:58
https://akira55.com/hyperlink/ より
同じブック・シート内のセルにジャンプする(ハイパーリンク)
同じブック内の別シートにジャンプする(ハイパーリンク)
かな?
https://akira55.com/hyperlink/ より
同じブック・シート内のセルにジャンプする(ハイパーリンク)
同じブック内の別シートにジャンプする(ハイパーリンク)
かな?
[返信 3] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 17:15:11
■[返信 1] ヘンリーさん(2021-05-16 16:03:31)の記事
> >1→2→3→4→5
> >6→7→8→9→10
> >11→12→13→14→15
> 何がこのように変化するのでしょうか?
> 行ですか?何かの値ですか?
>
> >探してるんですが、どうしても固定セルのものしか見つかりません。
> 固定のセルのコードだけでも載せてもらうと、
> 回答がしやすいのですが…
>
> 文字列結合の「&演算子」について調べてみてください
失礼いたしました!
以下でイメージわきますか?
<参照したいセル>
cell(1,1) cell(1,2) cell(1,3) cell(1,4) cell(1,5)
cell(2,1) cell(2,2) cell(2,3) cell(2,4) cell(2,5)
cell(3,1) cell(3,2) cell(3,3) cell(3,4) cell(3,5)
cell(4,1) cell(4,2) cell(4,3) cell(4,4) cell(4,5)
cell(5,1) cell(5,2) cell(5,3) cell(5,4) cell(5,5)
cell(6,1) cell(6,2) cell(6,3) cell(6,4) cell(6,5)
cell(7,1) cell(7,2) cell(7,3) cell(7,4) cell(7,5)
cell(8,1) cell(8,2) cell(8,3) cell(8,4) cell(8,5)
cell(9,1) cell(9,2) cell(9,3) cell(9,4) cell(9,5)
cell(10,1) cell(10,2) cell(10,3) cell(10,4) cell(10,5)
<埋め込みたいセル>
cell(1,1)
cell(2,1)
cell(3,1)
・
・
・
cell(50,1)
<現時点のコード>
Dim L 'Hyper Linkを埋め込むための変数
Dim M 'ハイパーリンク元を1列目から5列目まで順に移動させるための変数
Dim N 'ハイパーリンク元を50行面まで到達するまで繰り返すための変数。1行ずつ動かす。Mで移動したら、また1列目に戻るときに1行下がる
L = 1 'ハイパーリンクを埋め込む最初の行(=6行)にセット
For L = 1 To 50 'ハイパーリンクを1行目~50行面に繰り返し埋め込む設定
ActiveSheet.Hyperlinks.Add _
Anchor:=Cells(L, 4), _
Address:="", _
SubAddress:="AllGraph!A1", _ '←★★★★ここをどう書いたらいいでしょうか?
TextToDisplay:="AllGraph!A1", _ '←★★★★ここもホントは可変にしたいです。が、SubAddressができるようになったら真似すればできますよね?
ScreenTip:="同じブックの別シート内のセルへのリンク"
Next
■[返信 1] ヘンリーさん(2021-05-16 16:03:31)の記事
> >1→2→3→4→5
> >6→7→8→9→10
> >11→12→13→14→15
> 何がこのように変化するのでしょうか?
> 行ですか?何かの値ですか?
>
> >探してるんですが、どうしても固定セルのものしか見つかりません。
> 固定のセルのコードだけでも載せてもらうと、
> 回答がしやすいのですが…
>
> 文字列結合の「&演算子」について調べてみてください
失礼いたしました!
以下でイメージわきますか?
<参照したいセル>
cell(1,1) cell(1,2) cell(1,3) cell(1,4) cell(1,5)
cell(2,1) cell(2,2) cell(2,3) cell(2,4) cell(2,5)
cell(3,1) cell(3,2) cell(3,3) cell(3,4) cell(3,5)
cell(4,1) cell(4,2) cell(4,3) cell(4,4) cell(4,5)
cell(5,1) cell(5,2) cell(5,3) cell(5,4) cell(5,5)
cell(6,1) cell(6,2) cell(6,3) cell(6,4) cell(6,5)
cell(7,1) cell(7,2) cell(7,3) cell(7,4) cell(7,5)
cell(8,1) cell(8,2) cell(8,3) cell(8,4) cell(8,5)
cell(9,1) cell(9,2) cell(9,3) cell(9,4) cell(9,5)
cell(10,1) cell(10,2) cell(10,3) cell(10,4) cell(10,5)
<埋め込みたいセル>
cell(1,1)
cell(2,1)
cell(3,1)
・
・
・
cell(50,1)
<現時点のコード>
Dim L 'Hyper Linkを埋め込むための変数
Dim M 'ハイパーリンク元を1列目から5列目まで順に移動させるための変数
Dim N 'ハイパーリンク元を50行面まで到達するまで繰り返すための変数。1行ずつ動かす。Mで移動したら、また1列目に戻るときに1行下がる
L = 1 'ハイパーリンクを埋め込む最初の行(=6行)にセット
For L = 1 To 50 'ハイパーリンクを1行目~50行面に繰り返し埋め込む設定
ActiveSheet.Hyperlinks.Add _
Anchor:=Cells(L, 4), _
Address:="", _
SubAddress:="AllGraph!A1", _ '←★★★★ここをどう書いたらいいでしょうか?
TextToDisplay:="AllGraph!A1", _ '←★★★★ここもホントは可変にしたいです。が、SubAddressができるようになったら真似すればできますよね?
ScreenTip:="同じブックの別シート内のセルへのリンク"
Next
[返信 4] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 17:18:27
■[返信 2] わさん(2021-05-16 16:21:58)の記事
> https://akira55.com/hyperlink/ より
>
> 同じブック・シート内のセルにジャンプする(ハイパーリンク)
> 同じブック内の別シートにジャンプする(ハイパーリンク)
>
> かな?
同じブック内の別シートにジャンプする(ハイパーリンク)
です。
■[返信 2] わさん(2021-05-16 16:21:58)の記事
> https://akira55.com/hyperlink/ より
>
> 同じブック・シート内のセルにジャンプする(ハイパーリンク)
> 同じブック内の別シートにジャンプする(ハイパーリンク)
>
> かな?
同じブック内の別シートにジャンプする(ハイパーリンク)
です。
[返信 5] Re : HyperLinkに変数を組み込むには?
投稿者 : ヘンリー 投稿日時 : 2021/05/16(Sun) 17:35:38
先ほど言った文字列演算子「&」について
1度しっかり調べてみてください。
>SubAddress:="AllGraph!A1"
これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
という意味です。
つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
組み立ててあげればよいのです。
例
シート名を変数にしたい場合
変数名 & "!A1"
セルを変数にしたい場合
SubAddress:="AllGraph!" & 変数名
或いは、SubAddress:="AllGraph!A" & 変数名
※ただし、変数名の変数の型は文字列型です
先ほど言った文字列演算子「&」について
1度しっかり調べてみてください。
>SubAddress:="AllGraph!A1"
これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
という意味です。
つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
組み立ててあげればよいのです。
例
シート名を変数にしたい場合
変数名 & "!A1"
セルを変数にしたい場合
SubAddress:="AllGraph!" & 変数名
或いは、SubAddress:="AllGraph!A" & 変数名
※ただし、変数名の変数の型は文字列型です
[返信 6] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 20:32:35
■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> 先ほど言った文字列演算子「&」について
> 1度しっかり調べてみてください。
>
> >SubAddress:="AllGraph!A1"
> これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> という意味です。
>
> つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> 組み立ててあげればよいのです。
>
> 例
> シート名を変数にしたい場合
> 変数名 & "!A1"
>
> セルを変数にしたい場合
> SubAddress:="AllGraph!" & 変数名
> 或いは、SubAddress:="AllGraph!A" & 変数名
> ※ただし、変数名の変数の型は文字列型です
>
ありがとうございます。
文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> 先ほど言った文字列演算子「&」について
> 1度しっかり調べてみてください。
>
> >SubAddress:="AllGraph!A1"
> これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> という意味です。
>
> つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> 組み立ててあげればよいのです。
>
> 例
> シート名を変数にしたい場合
> 変数名 & "!A1"
>
> セルを変数にしたい場合
> SubAddress:="AllGraph!" & 変数名
> 或いは、SubAddress:="AllGraph!A" & 変数名
> ※ただし、変数名の変数の型は文字列型です
>
ありがとうございます。
文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
[返信 7] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 20:36:43
■[返信 6] VBA素人さん(2021-05-16 20:32:35)の記事
> ■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> > 先ほど言った文字列演算子「&」について
> > 1度しっかり調べてみてください。
> >
> > >SubAddress:="AllGraph!A1"
> > これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> > という意味です。
> >
> > つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> > 組み立ててあげればよいのです。
> >
> > 例
> > シート名を変数にしたい場合
> > 変数名 & "!A1"
> >
> > セルを変数にしたい場合
> > SubAddress:="AllGraph!" & 変数名
> > 或いは、SubAddress:="AllGraph!A" & 変数名
> > ※ただし、変数名の変数の型は文字列型です
> >
>
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
>
いや!以下のようにしたらうまくいきました!!
この考えであってますよね?
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
■[返信 6] VBA素人さん(2021-05-16 20:32:35)の記事
> ■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> > 先ほど言った文字列演算子「&」について
> > 1度しっかり調べてみてください。
> >
> > >SubAddress:="AllGraph!A1"
> > これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> > という意味です。
> >
> > つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> > 組み立ててあげればよいのです。
> >
> > 例
> > シート名を変数にしたい場合
> > 変数名 & "!A1"
> >
> > セルを変数にしたい場合
> > SubAddress:="AllGraph!" & 変数名
> > 或いは、SubAddress:="AllGraph!A" & 変数名
> > ※ただし、変数名の変数の型は文字列型です
> >
>
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
>
いや!以下のようにしたらうまくいきました!!
この考えであってますよね?
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
[返信 8] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 20:39:30
■[返信 6] VBA素人さん(2021-05-16 20:32:35)の記事
> ■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> > 先ほど言った文字列演算子「&」について
> > 1度しっかり調べてみてください。
> >
> > >SubAddress:="AllGraph!A1"
> > これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> > という意味です。
> >
> > つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> > 組み立ててあげればよいのです。
> >
> > 例
> > シート名を変数にしたい場合
> > 変数名 & "!A1"
> >
> > セルを変数にしたい場合
> > SubAddress:="AllGraph!" & 変数名
> > 或いは、SubAddress:="AllGraph!A" & 変数名
> > ※ただし、変数名の変数の型は文字列型です
> >
>
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
いや、以下のようにしたらうまくいきかけてます!(現時点ではまだズレてますが)
この考えで合ってますよね?
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
■[返信 6] VBA素人さん(2021-05-16 20:32:35)の記事
> ■[返信 5] ヘンリーさん(2021-05-16 17:35:38)の記事
> > 先ほど言った文字列演算子「&」について
> > 1度しっかり調べてみてください。
> >
> > >SubAddress:="AllGraph!A1"
> > これはSubAddressという引数に、"AllGraph!A1"という文字列を指定しろ
> > という意味です。
> >
> > つまり、文字列演算子と変数を使って、SubAddressに指定したい文字列を
> > 組み立ててあげればよいのです。
> >
> > 例
> > シート名を変数にしたい場合
> > 変数名 & "!A1"
> >
> > セルを変数にしたい場合
> > SubAddress:="AllGraph!" & 変数名
> > 或いは、SubAddress:="AllGraph!A" & 変数名
> > ※ただし、変数名の変数の型は文字列型です
> >
>
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
いや、以下のようにしたらうまくいきかけてます!(現時点ではまだズレてますが)
この考えで合ってますよね?
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
[返信 9] Re : HyperLinkに変数を組み込むには?
投稿者 : VBA素人 投稿日時 : 2021/05/16(Sun) 20:42:16
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
>
いや、こうしたらうまくいきかけてます!
調整してみます。
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
> ありがとうございます。
> 文字列型ということは、右方向に5列分動かすのは5列分のコードを書かないと無理でしょうか?
>
> 以下のようにC1R1様式にしたらうまくいくかとも思いましたが、ダメでした。
> SubAddress:="AllGraph!" & "R" & "[N]" & "C" & "[M]", _
>
いや、こうしたらうまくいきかけてます!
調整してみます。
SubAddress:="AllGraph!" & "R" & "[" & N & "]" & "C" & "[" & M & "]", _
[返信 10] Re : HyperLinkに変数を組み込むには?
投稿者 : わ 投稿日時 : 2021/05/19(Wed) 16:02:21
これも答えの一つ
Dim S, C, R, L, TexTo, ScrTip
S = "AllGraph" 'シート名
C = 2 'B列
R = 2 '2行目
TexTo = "AllGraph!A1"
ScrTip = "同じブックの別シート内のセルへのリンク"
L = 5
ActiveSheet.Hyperlinks.Add _
Anchor:=Cells(L, 4), _
Address:="", _
SubAddress:=S & "!" & Cells(R, C).Address(, , xlR1C1), _
TextToDisplay:=TexTo, _
ScreenTip:=ScrTip
これも答えの一つ
Dim S, C, R, L, TexTo, ScrTip
S = "AllGraph" 'シート名
C = 2 'B列
R = 2 '2行目
TexTo = "AllGraph!A1"
ScrTip = "同じブックの別シート内のセルへのリンク"
L = 5
ActiveSheet.Hyperlinks.Add _
Anchor:=Cells(L, 4), _
Address:="", _
SubAddress:=S & "!" & Cells(R, C).Address(, , xlR1C1), _
TextToDisplay:=TexTo, _
ScreenTip:=ScrTip
当掲示板について
- Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
- 記事内ではHTMLのタグは使用できません。
- 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
- Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
- Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
( 処理日時 : 2026-04-03 09:59:07 )