2010-08-31 96 views
1

我有一张表单,其中我从两个不同的表格中输入单元格中的值。第一个表格有3个字段,所以sheet1.range从A1到c23被填充用这个表值。现在第二张表有两个字段,我填写Sheet1从A25到B37。如何识别excel中正常单元格的列标题通过vba

现在,每个表格都给出了第一个表的A1,B1,C1和第二个表的A25,B25的列标题。所以我想遍历这些条目,但是当我遇到table2条目或更具体地专栏标题我应该停下来,并通过他们完成一个不同的过程。

任一表的行数不固定。

回答

1

您可以逐行处理每个表,并使用第一列中的空单元格作为中断标准。但是你必须asume行或表的恒定数量的绝对最大值在您的工作表,除非你想搜索,直到行65K ....例如:

Sub Test() 
Dim MyR As Range, Idx As Integer 

    Set MyR = [A1] 
    Idx = 1 

    Debug.Print "Header 1 = " & MyR(Idx, 1) 

    'advance to end of table 
    Do While MyR(Idx, 1) <> "" 
     Idx = Idx + 1 
    Loop 

    'advance to next header (could be one or more blank lines) 
    Do While MyR(Idx, 1) = "" 
     Idx = Idx + 1 
    Loop 

    Debug.Print "Header 2 = " & MyR(Idx, 1) 

    'etc 

End Sub 

希望帮助....好运气 - MikeD

相关问题