根据Excel的单元格创建超链接到当前文档的Sheet
- Sheet的索引是从1开始的;
1. 根据单元格创建Sheet
- 在Excel表的最后面添加5个Sheet
Sub CreateLink()
Dim x As Long
For x = 1 To 5
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Sheet" + "_" + CStr(x)
Next x
End Sub
2. 删除包含指定字符的Sheet
- 在所有Sheet中删除Sheet中包含"指定字符"的Sheet
Sub DeleteSheets()
Dim x As Long
For x = 1 To Sheets.Count
If InStr(Sheets(x).Name, "指定字符") > 0 Then
Sheets(x).Delete
End If
Next x
End Sub
3. 修改Sheet名称
- 根据第1个Sheet中的第4列中的文本修改Sheet的名称
Sub ChangeSheetName()
Dim x, y, z As Long
For x = 1 To Sheets.Count
If Sheets(1).Cells(x, 4) <> "" Then
z = 0
For y = 1 To Sheets.Count
If Sheets(y).Name = Sheets(1).Cells(x, 4) Then
z = 1
Exit For
End If
Next y
If z = 1 Then
Sheets(x).Name = Sheets(1).Cells(x, 4) + "_" + CStr(x)
Else
Sheets(x).Name = Sheets(1).Cells(x, 4)
End If
End If
Next x
End Sub
4. 创建超链接
- 根据第1个Sheet中的第4列中的单元格创建超链接,链接到对应的Sheet
- 第几行的单元格对应对几个的Sheet
- 也可以指定Sheet名称 : SubAddress:=Sheets(Cells(x, 4)).Name
Sub CreateLink()
Dim x As Long
For x = 1 To Sheets.Count
If Cells(x, 4) <> "" Then
Sheet1.Hyperlinks.Add Anchor:=Cells(x, 4), Address:="", SubAddress:=Sheets(x).Name & "!A1", TextToDisplay:=Sheets(x).Name
End If
Next x
End Sub
说明:
- Hyperlinks : 对象是添加链接用的,其中Anchor, Address和SubAddress 是它的属性
- Anchor : 要添加链接的位置,必选
- Address : 链接地址,一般是外部的链接地址,必选
- SubAddress :超链接的子地址,可选
- TextToDisplay : 单元格显示的名称,可选