使用名称参考

时间:2015-07-07 20:29:56

标签: excel vba excel-vba

我的一张工作表是我工作簿中的几张(不是全部)其他工作表的列表。根据几个参数,列表将不包含相同的表格。

我只想要创建超链接的帮助。正在调用我要链接到的表单的名称(ws.Name)。因此超链接必须使用此名称,而不是硬编码名称。到目前为止,我已经有了这个:

            ActiveSheet.Hyperlinks.Add _
                Anchor:=f_ListeMoms.Range("col_mom")(j), _
                Address:="'" & ws.Name & "'!A1", _
                TextToDisplay:=nomMoM

其中锚点运行良好,无需担心锚点。它只是说单击时无法到达目的地,右键单击超链接>修改超链接显示地址如下:['MoM11'!A1]。 ws.name是字符串“MoM11”。

我也有这个版本不起作用,因为我不知道如何把它:

f_ListeMoms.Range("col_mom")(j).FormulaR1C1 = "=HYPERLINK(" & ws.Name & ",""CLICK HERE"")"

有谁知道我做错了什么,还是可以展示另一种方法?谢谢!

2 个答案:

答案 0 :(得分:2)

尝试此格式(使用SubAddress):

    Sheet1.Hyperlinks.Add _
            Anchor:=Sheet1.Range("C3"), _
            Address:="", _
            SubAddress:="'" & Sheet2.Name & "'!A1", _
            TextToDisplay:="Sheet 2"

注意:通常SubAddress以当前文件中的位置为目标(文档中的内部Excel导航),但地址以网页为目标 - 它尝试在浏览器中打开目标

答案 1 :(得分:0)

不确定您是否需要此行中的单引号

Address:=" & ws.Name & !A1", _

尝试

SELECT
  a1.name
FROM
  (SELECT name, date FROM table WHERE action = 'action1') a1
JOIN
  (SELECT name, date FROM table WHERE action = 'action2') a2
  ON
  a2.name = a1.name
  AND
  a2.date > a1.date