Excel VBA超链接到另一个工作簿,并将值输入到打开的工作簿中

时间:2018-12-24 05:27:31

标签: excel vba

我正在努力帮助我的父亲在他的制造业中建立订单和工作管理“系统”。

为此,我有一本“订单”工作簿,其中有一个工作表,其中包含一张客户订单表,其中每一行都是不同的订单。每行包含每个订单的所有关键信息(订单号,数量,产品,到期日,打开相关工作表的超链接)。

我已经为他所有的主要产品和定期订购的产品写了“作业单”。这些工作表包含在单独的工作簿中。

我希望用户能够打开中央订单列表,单击指向他们需要生产所订购产品的工作表的链接,然后自动用目标中包含的关键订单信息填充该工作表单击超链接的行。

我一直在尝试写私有子文件(使用workbook_followHyperlink)失败。我一直在尝试使用超链接。地址方法来捕获正在打开的工作簿的名称,然后使用该地址作为文件名来指示应在何处输入订单信息。

我在编写VBA代码方面越来越好,但是我仍然需要模板或“线索”来开始编写自己的东西。我已经做了大量的Google搜索工作,以查找示例,但是我遇到的唯一示例都知道目标工作簿的名称,或者可以引用同一工作簿中的工作表之间的超链接

即使只是我需要入门的概述,我也非常感谢。

1 个答案:

答案 0 :(得分:0)

Excel跟随超链接后,将触发Worksheet_FollowHyperlink事件(并因此打开了工作簿中定义的工作簿。随之而来的是ActiveWorkbook是超链接定义的工作簿。因此您可以使用它。但是,如果您想要实际的名称形式超链接

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim x As Long
Dim s As String
Dim answer As String
For x = Len(Target.Address) To 1 Step -1
     s = Mid(Target.Address, x, 1)
     If s = "\" Then Exit For
     answer = s & answer
Next x
MsgBox answer

End Sub