我有两本工作簿" UI.xlsm"和#34; Gas_Insulated_MV_Circuit.xlsm",在第一个工作簿(UI.xlsm)中,我维护了特定列中的超链接列表,点击链接,它将带我到相应的其他工作簿。
任务是从" UI.xlsm"中捕获所点击的超链接的文本。工作簿,我必须在" Gas_Insulated_MV_Circuit.xlsm"
中使用相同的值以下是来自UI.xlsm工作簿的代码,我在其中捕获单击的超链接单元格文本并将其存储为字符串
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim BR as String
BR = Target.Range.Text 'Here i'm storing the clicked cell text
End Sub
现在我需要在另一个工作簿中使用BR字符串值" Gas_Insulated_MV_Circuit.xlsm"
Public BR as String ' I have declared BR as a public variable
Private Sub CommandButton27_Click()
Dim WbUI as Workbook
Dim WsUI as Worksheet
Dim File1 as string
Set WbUI = Workbooks ("UI.xlsm")
Set WsUI = WbUI.Sheets("Sheet1")
File1 = BR ' I want something like this, where i can assign BR value from
UI.xlsm workbook to File 1 of the current workbook
End Sub
任何人都可以帮助我实现它。
答案 0 :(得分:0)
我在 UI.xlsm 工作簿中使用=Sheet1!A1
创建了一个已定义的名称(例如 myBR )作为指的是: 。使用已定义的名称“种子”,我将您的Worksheet.FollowHyperlink事件宏更改为
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
ThisWorkbook.Names("myBR").RefersToR1C1 = _
Chr(61) & Chr(34) & Target.Range.Text & Chr(34)
End Sub
在 Gas_Insulated_MV_Circuit.xlsm 工作簿中,我可以使用
检索最近点击的超链接的单元格文本(即TextToDisplay属性)=UI.xlsm!myBR
在两个工作簿打开的情况下,单元格值立即发生变化。在VBA中分配字符串或整数变量应该没问题。