工作表循环,数组

时间:2018-12-22 22:24:47

标签: excel vba excel-vba

我是一个初学者,我想在excel文件的所有工作表中循环执行以下特定操作:将格式更改为具有特定标题的所有列。 不幸的是,下面的代码仅在活动工作表中起作用,而在活动工作簿中的其他工作表中不起作用。你有什么线索吗?

非常感谢

name

1 个答案:

答案 0 :(得分:2)

浏览工作表不会激活当前的循环工作表,因此您必须限定对其的所有范围引用

您可以通过“ With sht ... End With”块来实现,并在该块内的所有范围引用之前填充一个点

除了选择范围对象之外,不要“选择”任何东西

For Each sht In ActiveWorkbook.Worksheets
    With sht 
        Set rrow = .Range("A1:Z1")
        For t = LBound(timelist) To UBound(timelist)
            For Each rcell In rrow
                If rcell.Value = timelist(t) Then
                    .Range(rcell.Offset(1, 0), rcell.Offset(1, 0).End(xlDown)).NumberFormat = "dd/mm/yyyy hh:mm:ss"
                End If
            Next rcell
        Next t
    End With
Next sht