2017-06-03 17 views
0

現在、選択した2つのセルをハイパーリンクで自動的にリンクしようとしています。 ユーザは2つの異なるセルを選択することができます(入力ボックスを介して1つずつ)。セルにセル2とセル1からセル2に指し示すハイパーリンクを追加する必要があり、これら二つのセルに1Excel VBAリンクハイパーリンクで2つのユーザーが選択したセル

は、これまでのところ、私はこの持っている:私は、実行時エラー13を得るしかし

Option Explicit 

Sub Hyperlinks() 
Dim FirstHyperlink As Range 
Dim SecondHyperlink As Range 

Set FirstHyperlink = Application.InputBox("Please select first cell to contain hyperlink", "Hyperlink 1 selection", Type:=8) 
Set SecondHyperlink = Application.InputBox("Please select second cell to contain hyperlink", "Hyperlink 2 selection", Type:=8) 

ActiveSheet.Hyperlinks.Add Anchor:=FirstHyperlink.Address, Address:="", SubAddress:= _ 
    SecondHyperlink.Address, TextToDisplay:=FirstHyperlink.Value 

ActiveSheet.Hyperlinks.Add Anchor:=SecondHyperlink.Address, Address:="", SubAddress:= _ 
    FirstHyperlink.Address, TextToDisplay:=SecondHyperlink.Value 

End Sub 

:タイプの不一致を指して

ActiveSheet.Hyperlinks.Add Anchor:=FirstHyperlink.Address, Address:="", SubAddress:= _ 
     SecondHyperlink.Address, TextToDisplay:=FirstHyperlink.Value 

誰でも問題の原因は何ですか?

答えて

2

ちょうどあなたのAnchorsを修正:

Option Explicit 

Sub Hyperlinks() 
Dim FirstHyperlink As Range 
Dim SecondHyperlink As Range 

Set FirstHyperlink = Application.InputBox("Please select first cell to contain hyperlink", "Hyperlink 1 selection", Type:=8) 
Set SecondHyperlink = Application.InputBox("Please select second cell to contain hyperlink", "Hyperlink 2 selection", Type:=8) 

ActiveSheet.Hyperlinks.Add Anchor:=FirstHyperlink, Address:="", SubAddress:= _ 
    SecondHyperlink.Address, TextToDisplay:=FirstHyperlink.Value 

ActiveSheet.Hyperlinks.Add Anchor:=SecondHyperlink, Address:="", SubAddress:= _ 
    FirstHyperlink.Address, TextToDisplay:=SecondHyperlink.Value 

End Sub 

これは、細胞が、そもそもいくつかの非NULL値を持っていることを前提としています。完全性の理由から

1

ここで私は最終的にで働いていたコードがあります。私は1つのワークシートだけでなく、別のワークシートでも動作させるためのコードをいくつか書きました。

Option Explicit 

Sub Hyperlinks() 
Dim FirstHyperlink As Range 
Dim SecondHyperlink As Range 
Dim FirstSheet As Worksheet 
Dim SecondSheet As Worksheet 

Set FirstHyperlink = Application.InputBox("Please select first cell to contain hyperlink", "Hyperlink 1 selection", Type:=8) 
Set FirstSheet = FirstHyperlink.Worksheet 
Set SecondHyperlink = Application.InputBox("Please select second cell to contain hyperlink", "Hyperlink 2 selection", Type:=8) 
Set SecondSheet = SecondHyperlink.Worksheet 

ActiveSheet.Hyperlinks.Add Anchor:=FirstHyperlink, Address:="", SubAddress:= _ 
    "'" & SecondSheet.Name & "'" & "!" & SecondHyperlink.Address, TextToDisplay:=FirstHyperlink.Value 

ActiveSheet.Hyperlinks.Add Anchor:=SecondHyperlink, Address:="", SubAddress:= _ 
    "'" & FirstSheet.Name & "'" & "!" & FirstHyperlink.Address, TextToDisplay:=SecondHyperlink.Value 

End Sub 
+0

この情報をご提供いただきありがとうございます。 –

関連する問題