我一直在寻求帮助,但一直没有成功。我找到了不同的代码来使用工作表上的按钮返回到用户所在的上一个工作表。我工作的公司想要的是几乎每个工作表顶部的链接,作为用户的导航窗格。我已经在必要工作表的顶部创建了链接,这些链接都按预期工作。我最初在我的工作簿中添加了代码,以便在单元格“A5”上使用反向链接(前一个工作表用户打开,而不是当前工作表之前的工作表)并且它工作了一段时间但是我已经在工作簿中的其他项目上进展,代码停止工作。我已经将工作工作簿上的代码与非工作工作簿进行了比较,它们是相同的,我不相信其他代码会导致它出现故障。看下面的代码,有没有人对我提出建议?
在具有后退按钮的工作表上我有:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Selection.Count = 1 Then
If Not Intersect(Target, Range("A5")) Is Nothing Then
Call SelectLast
End If
End If
End Sub
在ThisWorkbook对象中,我有以下内容:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
LastSheet = Sh.Name
End Sub
最后,我在其自己的模块中有以下内容:
Public LastSheet As String
Sub SelectLast()
Application.Sheets(LastSheet).Select
End Sub
非常感谢任何帮助。谢谢!
答案 0 :(得分:2)
添加工作簿级名称“LastSheet”:
然后在ThisWorkbook
模块中添加此代码:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'EDIT
ThisWorkbook.Names("lastsheet").RefersToR1C1 = "='" & Sh.Name & "'!R1C1"
End Sub
对于“上一页”超链接,请使用:
=HYPERLINK("#LastSheet","Previous sheet")
如果您希望使用“后退”链接,并在链接中显示目标表单名称:
=HYPERLINK("#lastsheet",
"<< back to - " & SUBSTITUTE(MID(CELL("address",lastsheet),1+
FIND("]",CELL("address",lastsheet)),200),"!$A$1",""))
答案 1 :(得分:0)