Arrays 使用带有预紧板材的阵列进行循环-VBA

Arrays 使用带有预紧板材的阵列进行循环-VBA,arrays,vba,excel,Arrays,Vba,Excel,我不熟悉该网站,不熟悉vba编码,也不熟悉循环,目前我正试图在工作簿中总结数据,该工作簿共有25张工作表,这些工作表不是根据问题固定的,我们的工作表列表最多有25张(2张(查看恢复和打开项)是运行我的代码的主工作表,并添加新工作表(最多23张)。我想总结第4行“摘要”选项卡中使用view recon生成的10张图纸的数据。例如图纸名称(图纸2、5、7、9、10、12、14、17、18、19),此处图纸名称固定,图纸数量不固定,可以是1-10 我尝试使用-这对我来说不起作用,因为我可能定义不正确

我不熟悉该网站,不熟悉vba编码,也不熟悉循环,目前我正试图在工作簿中总结数据,该工作簿共有25张工作表,这些工作表不是根据问题固定的,我们的工作表列表最多有25张(2张(查看恢复和打开项)是运行我的代码的主工作表,并添加新工作表(最多23张)。我想总结第4行“摘要”选项卡中使用view recon生成的10张图纸的数据。例如图纸名称(图纸2、5、7、9、10、12、14、17、18、19),此处图纸名称固定,图纸数量不固定,可以是1-10

我尝试使用-这对我来说不起作用,因为我可能定义不正确

Dim sh As Worksheet

For Each sh In Sheets(Array("Sheet2", "Sheet5", "Sheet7", "Sheet9", "Sheet10", "Sheet12", "Sheet14", "Sheet17", "Sheet18", "Sheet19"))
然后我的代码来总结它-当我单独做它时,它工作得很好,但我不能定义和使用数组,如果你们中的任何人能帮助我纠正它,这将是很有帮助的

周末快乐

谢谢你的帮助

问候 Suresh将工作表用作变量数组中的字符串。当您依次完成每一项工作时,请在表格中定义您的工作表

这是我自己喜欢的方法。就您自己而言,
对于每个sh In…
都可以这样使用

Dim sh As Worksheet

For Each sh In Sheets(Array("Sheet2", "Sheet5", "Sheet7", "Sheet9", "Sheet10", "Sheet12", "Sheet14", "Sheet17", "Sheet18", "Sheet19"))
    With sh
         'Use .Range or .Cells here
    End With
Next sh

谢谢专家,但我无法更正代码,如果您能看到这一点,我会很有帮助,但我无法完全发布。我将尝试使用asnwer并发布工作表窗口底部的名称选项卡中的工作表名称是什么?@Jeeped:您的第二个代码示例与OP的代码完全相同,即在字符串数组上循环。改进在哪里?这个错误一定是其他原因造成的,或者我错过了显而易见的?@user1016274-只要sh变量被正确引用,问题中的代码就会工作。我提供了一种在循环的每个迭代中引用工作表的方法,而无需重复使用sh变量。由于没有引用实际工作表的工作代码,OP可能使用了
范围(“A1”)
,并期望该范围引用正确的父工作表。
Dim sh As Worksheet

For Each sh In Sheets(Array("Sheet2", "Sheet5", "Sheet7", "Sheet9", "Sheet10", "Sheet12", "Sheet14", "Sheet17", "Sheet18", "Sheet19"))
    With sh
         'Use .Range or .Cells here
    End With
Next sh