2015-12-14 17 views
2

我在第一個工作簿(UI.xlsm)中有兩個工作簿「UI.xlsm」和「Gas_Insulated_MV_Circuit.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

我在UI.xlsm工作簿中創建定義名稱(例如myBR)與=Sheet1!A1作爲指:。與定義的名稱「播種」,我改變了你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中的字符串或整數變量應該沒有問題。

+0

什麼是myBR?這是A1的單元格文字嗎? –

+0

公式►定義的名稱►名稱管理器►添加►名稱:** myBR **,範圍:**工作簿**,參考:** = Sheet1!A1 **。這會創建一個名爲** myBR **的命名區域,可以稍後使用Worksheet_FollowHyperlink事件宏來更改。 – Jeeped

相關問題