繁体   English   中英

工作表循环 - 如何检索工作表的名称并将其放入公式

[英]Worksheet loop - How to retrieve name of the worksheet and put it into formula

对于工作表中的每一列,我试图根据列的标题(其中列中的第一行与工作表具有相同的名称)从另一个工作表中获取信息。

这是我的代码:

Dim i As Integer
For i = 1 To 60
    wsmain.Cells(2, 11 + i).FormulaArray = "=IF(priceFlag, '[SP60-Sub-Index.xlsm]wsName'!F2, '[SP60-Sub-Index.xlsm]wsName'!E2)"

    strName = wsmain.Cells(2, 11 + i).Value
    With wsmain.Cells(2, 11 + i)
        .Replace "wsName", strName, xlPart
    End With
Next i

我已将strName定义为字符串,但它不起作用。

有任何想法吗?

这会在第 2 行中查找工作表名称,并将公式放在第 3 行中。

无需替换,只需连接到位即可。

FormulaArray 将使公式成为您想要的数组公式。

您使用的代码是为了绕过255 个字符的FormulaArrays 限制。 简单的公式不需要它。

Dim i As Long
For i = 1 To 60
    strName = wsmain.Cells(2, 11 + i).Value
    wsmain.Cells(3, 11 + i).Formula = "=IF(priceFlag, '[SP60-Sub-Index.xlsm]" & strName & "'!F2, '[SP60-Sub-Index.xlsm]" & strName & "'!E2)"    
Next i

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM