超链接。添加VBA
我在用VBA编程。我想使用超链接。添加VBA,vba,excel,hyperlink,Vba,Excel,Hyperlink,我在用VBA编程。我想使用hyperlink创建超链接。添加ActiveSheet对象的方法,但它不起作用 这是我的密码: 'set the link Dim mainsheet As Worksheet Dim ws As Worksheet Set mainsheet = ActiveWorkbook.Sheets("Main") Set ws = ActiveWorkbook.Sheets(rowNumb + 2) mainsheet.Hyperlinks.Add Anchor:=ma
hyperlink创建超链接。添加ActiveSheet对象的方法,但它不起作用
这是我的密码:
'set the link
Dim mainsheet As Worksheet
Dim ws As Worksheet
Set mainsheet = ActiveWorkbook.Sheets("Main")
Set ws = ActiveWorkbook.Sheets(rowNumb + 2)
mainsheet.Hyperlinks.Add Anchor:=mainsheet.Range(rowTablecontent + rowNumb, colTablecontent + 3), _
Address:="", _
SubAddress:=ws.Name & "!A1", _
TextToDisplay:="Link"
代码说明:
我有一个主页,上面有一个目录和一个启动宏的按钮。启动宏时,程序导入4个文件(每个文件在主工作簿中有一张工作表,等于一张工作表)。根据这4个文件的信息,将生成大约500张工作表。
重点是:现在我想要一个目录。对于每一页,在主页中有一个链接
变量:
- rowTablecontent-->内容表顶部的行
- 内容表左侧的colTablecontent-->列
- 输入文件上的rowNumb-->行计数器
我在另一个程序中使用了相同的代码,它在那里工作,所以我不知道我做错了什么
有人知道会出什么问题吗
从评论中复制的重要信息
在我的项目中,我有4个输入文件/工作表。它在那里工作。但是在自动创建的工作表上,它不工作
我测试了这个,它在Excel2007上运行,你可以试试吗
编辑以接近您的问题。
这允许从activesheet导航到具有行索引功能的工作表
可以使用其他参数调用sofMacro20000463()。因为您没有提到您将遇到的错误。可能会有很多错误。其中一些错误是
Activesheet不是您认为的那个
所选内容不是范围
工作表不存在
rowNumb不是有效的数字
工作表/工作簿可能受到保护(谢谢Sam)
试试这个
Option Explicit
Sub Sample()
Dim rowNumb As Long
Dim ws As Worksheet
'~~> Change this to the relevant number
rowNumb = 1
If TypeOf Selection Is Range Then
On Error Resume Next
Set ws = ThisWorkbook.Sheets(rowNumb + 1)
If Err.Number <> 0 Then
MsgBox "Sheet doesn't exist"
Exit Sub
End If
On Error GoTo 0
ThisWorkbook.ActiveSheet.Hyperlinks.Add Anchor:=Selection, _
Address:="", _
SubAddress:=ws.Name & "!A1", _
TextToDisplay:="Link"
Else
MsgBox "InValid Range Object"
End If
End Sub
我没有做任何错误处理。我相信你会处理好的。Rownum
中的值是多少?确保有索引的工作表存在。什么不起作用?你能更具体一点吗?你收到错误消息了吗?是什么?你有多少工作表?@Santosh它有exist@mehow当我是克莱克king在链接上有一个警告:“Bezug ist ungültig”(英文:“引用无效”)而且我有足够的工作表。我不认为rowNumb
实际上是一个行号。它被用作一个工作表索引。它的名称很糟糕。@Sam不,它是一个行号,但来自另一个工作表。@jacouh我不明白你的意思。@jacouh好的。但是你的例子不起作用。在我的函数中,我把rowNumb作为参数。其余的都是相同的参数s我已经有了。@jacouh好的。它在excel2010上不起作用…@Sam我怎样才能检查我的工作表是否受到保护?@SiddharthRout是的。在我的项目中,我有4个输入文件/工作表。它可以工作。但是在自动创建的工作表上,它不起作用。键盘组合ATL+t+P+P(我有office 2010).@SiddharthRout“Bezug ist ungültig”(英文:“引用无效”)@SiddharthRout我在锚点使用范围或单元格有关系吗?@SiddharthRout谢谢你的帮助。但它仍然不起作用。总是一样的错误:引用无效
Option Explicit
Sub Sample()
Dim rowNumb As Long
Dim ws As Worksheet
'~~> Change this to the relevant number
rowNumb = 1
If TypeOf Selection Is Range Then
On Error Resume Next
Set ws = ThisWorkbook.Sheets(rowNumb + 1)
If Err.Number <> 0 Then
MsgBox "Sheet doesn't exist"
Exit Sub
End If
On Error GoTo 0
ThisWorkbook.ActiveSheet.Hyperlinks.Add Anchor:=Selection, _
Address:="", _
SubAddress:=ws.Name & "!A1", _
TextToDisplay:="Link"
Else
MsgBox "InValid Range Object"
End If
End Sub
Sub Sample()
Dim wb As Workbook
Dim ws1 As Worksheet, ws2 As Worksheet
Set wb = Workbooks.Add
Set ws1 = wb.Sheets("Sheet1")
Set ws2 = wb.Sheets("Sheet2")
ws1.Hyperlinks.Add Anchor:=ws1.Range("A1"), _
Address:="", _
SubAddress:=ws2.Name & "!A1", _
TextToDisplay:="Link"
End Sub