使用范围Excel VBA循环遍历每列的第一个单元格

我有一个示例数据在工作表中,我想获取使用范围中每列的标题,下面是示例

在这里输入图像说明

我永远不知道使用的确切列数,我需要从这张表中获取所有标题( CustomersManagersManagers-2 ….)以显示给用户。

我可以循环遍历使用的范围内的每个单元格

For Each cell In ActiveWorkbook.Worksheets(SheetName).UsedRange Next 

但是我怎样才能循环每列,只读取他们的第一个单元格的值? 因为这些列表的数量可以是一个或多个。

用这个迭代代码replace第一行使用的范围:

 For Each cell In ActiveWorkbook.Worksheets(SheetName).UsedRange.Rows(1).Cells ... Next 
 'Get a 2D array of header values Dim aHeaders() As Variant aHeaders = Sheet1.UsedRange.Rows(1).Value 

这完全取决于您的数据质量。 遇到这无数次。

如果你的标题是一致的,那么你只需要调整到第一行。 就像是:

 Dim r as range, r1 as range Set r = Range("A1").CurrentRegion.Resize(1) 

然后为每一个范围做一个。

  For Each r1 in r Next 

你也可以使用一个整数variables….

  Dim i as integer For I = 1 to r.Count Next