首页 > 解决方案 > Excel 生成公式

问题描述

我的 XLS 文档中有 600 多个工作表。我需要在第一个工作表中生成一个公式。

=HYPERLINK("#1!A1", CONCATENATE("YES (", COUNTA('1'!B:B)-1, ")"))
...
=HYPERLINK("#9!A1", CONCATENATE("YES (", COUNTA('9'!B:B)-1, ")"))
=HYPERLINK("#10!A1", CONCATENATE("YES (", COUNTA('10'!B:B)-1, ")"))
=HYPERLINK("#11!A1", CONCATENATE("YES (", COUNTA('11'!B:B)-1, ")"))

正如您所看到的,公式仅因工作表的名称而异(它是数字 1...624)

当我复制并粘贴公式时,我得到了完全相同的公式。

谁能帮我这个?我不介意使用 VBA 将公式存储在 Sheet1 中,从单元格 E5 到 E624

标签: vbaexcel

解决方案


在 VBA 中,一个简单的循环将执行以下操作:

Sub createHyperLink()
    For i = 1 To 624
        Range("E" & i).Formula = "=HYPERLINK(""#" & i & "!A1"", CONCATENATE(""YES ("", COUNTA('" & i & "'!B:B)-1, "")""))"
    Next i
End Sub

推荐阅读