VBA在excel中选择包含标题的列(如何使用数据自动调整列?)

时间:2016-01-06 11:05:47

标签: excel excel-vba excel-2010 excel-2007 vba

使用VBA如何在Excel中选择包含标题的所有列?还是所有非空白的栏目?基本上选择包含数据的所有列。

3 个答案:

答案 0 :(得分:1)

一种简单的方法是使用range("A1").CurrentRegion之类的东西 要解决这些列:range("A1").CurrentRegion.Columns。 关于"选择":这通常是无用的,只会减慢您的代码速度。除非你有充分的理由,否则永远不会Select

答案 1 :(得分:1)

使用数据自动调整列

Sub AutoFit()
    Rows("1:1").SpecialCells(xlCellTypeConstants, 23).Columns.AutoFit
End Sub

或者可能

Sub AutoFitCell()
  Cells.SpecialCells(xlCellTypeConstants, 23).Columns.AutoFit
End Sub

答案 2 :(得分:0)

不确定这对您是否有用,但是如果要选择其中包含数据的所有单元格会怎么样?这里有一个小宏,只需编辑范围以符合您的标准

Sub Macro1()

Dim LR As Long, cell As Range, rng As Range
With Sheets("Sheet1")
    LR = .Range("G" & Rows.Count).End(xlUp).Row
    For Each cell In .Range("A1:G" & LR)
        If cell.Value <> "" Then
            If rng Is Nothing Then
                Set rng = cell
            Else
                Set rng = Union(rng, cell)
            End If
        End If
    Next cell
    rng.Select
End With
End Sub