2017-09-21 6 views
2

以下のコードは、My workbook for Indexingで使用されています。問題は、このコードが "Back to Index"でA1のセルを上書きしてしまうことです。このコードを変更して、各シートの現在の値A1セルを上書きしないで、現在の値が保持されているA1セルのハイパーリンクがインデックスページに戻って作成されるようにするにはどうすればよいですか? TIAVBAを使用したExcelでのインデックス作成

Private Sub Worksheet_Activate() 
Dim wSheet As Worksheet 
Dim l As Long 

l = 1 

    With Me 
     .Columns(1).ClearContents 
     .Cells(1, 1) = "INDEX" 
     .Cells(1, 1).Name = "Index" 
    End With 


    For Each wSheet In Worksheets 
     If wSheet.Name <> Me.Name Then 
      l = l + 1 
       With wSheet 
        .Range("A1").Name = "Start_" & wSheet.Index 
        .Hyperlinks.Add Anchor:=.Range("A1"), Address:="", _ 
        SubAddress:="Index", TextToDisplay:="Back to Index" 
       End With 

       Me.Hyperlinks.Add Anchor:=Me.Cells(l, 1), Address:="", _ 
       SubAddress:="Start_" & wSheet.Index, TextToDisplay:=wSheet.Name 
     End If 
    Next wSheet 

End Sub 

答えて

1

私はかなり簡単ですが、おそらく私はその問題を理解できませんでした。

With wSheet 
     .Range("A1").Name = "Start_" & .Index 
     .Hyperlinks.Add Anchor:=.Range("A1"), Address:=vbNullstring, _ 
     SubAddress:="Index", TextToDisplay:=.Range("A1").Text 
    End With 
関連する問題