2017-03-14 7 views
1

table_snpshot 1つのセルにハイパーリンクを作成するコードがあります。私はそれが列FまたはCまたはE.エクセルvbaでハイパーリンクを追加するためのコードを反復する

Sub insertVeryLongHyperlink() 

Dim curCell As Range 
Dim longHyperlink, TextToDisplay1 As String 

Set curCell = Range("G1") ' or use any cell-reference 
longHyperlink = [E1] 
TextToDisplay1 = [C1] 

curCell.Hyperlinks.Add Anchor:=curCell, _ 
       Address:=longHyperlink, _ 
       SubAddress:="", _ 
       ScreenTip:=" - Click here to follow the hyperlink", _ 
       TextToDisplay:=TextToDisplay1 

End Sub 
+0

です列の上にあるセルにハイパーリンクを追加しますか? –

+0

はい、あなたは正しいです。私はテーブルの最後の行までハイパーリンクを作成したい。メインポストのスナップショットを見つけてください。 –

+0

コードを 'For ... Loop'で囲み、すべての行を繰り返します。 – ManishChristian

答えて

2

これはcolumn Gにハイパーリンクを作成するに沿ってすべての充填されたセルを反復処理します。

Sub InsertVeryLongHyperlink() 
    Dim cl As Range 

    For Each cl In Range("G1:G" & Range("G1").End(xlDown).Row) 
     cl.Hyperlinks.Add Anchor:=cl, Address:=cl.Offset(0, -2).Text, TextToDisplay:=cl.Offset(0, -4).Text, ScreenTip:=" - Click here to follow the hyperlink" 
    Next cl 
End Sub 
  • cl.Offset(0, -2).Text列E
  • cl.Offset(0, -4).Textあなたは `hyperlink`が列Eにあると` textToDisplay`が列Cにあり、あなたが反復したい意味するか、列C
+0

素晴らしいですが、最後の行まで変更する必要があります。現在の範囲は固定されていますが、合計の行数に応じて範囲変数を作成する手助けはできますか? –

+0

範囲Gを長さ可変にするコードを更新しました –

+0

ありがとうございます。ありがたいことに、ちょうど "G1"の代わりに1つの修正( "F1")をしました。 –

関連する問題