xyz*_*xyz 8 excel vba excel-vba
我想将分隔列插入Excel报表,以使现有列更易于查看.
报告是动态创建的,我不知道会有多少列; 可能有5,10,17等
该部分从F开始,然后转到 ival=Application.WorksheetFunction.CountIf(range("D2:D" & LastRow), "Other")
因此,如果ival=10那时列是FGHIJKLMNO,我需要在F&G,G&H,H&I,I&J,...和N&O之间插入列.
这可能是插入列的可能性: Workbooks("yourworkbook").Worksheets("theworksheet").Columns(i).Insert
但我不知道如何循环ival.
Sub InsertColumns()
Dim iVal As Integer
Dim Rng As range
Dim LastRow As Long
Dim i As Integer
With Sheets("sheet1")
LastRow = .range("D" & .Rows.Count).End(xlUp).Row
End With
iVal = Application.WorksheetFunction.CountIf(range("D2:D" & LastRow), "Other")
For i = 7 To iVal - 1
Workbooks("yourworkbook").Worksheets("theworksheet").Columns(i+1).Insert
Next i
End Sub
Run Code Online (Sandbox Code Playgroud)
以下代码应该无需担心ival:
Sub InsertSeparatorColumns()
Dim lastCol As Long
With Sheets("sheet1")
lastCol = Cells(2, .Columns.Count).End(xlToLeft).Column
For i = lastCol To 7 Step -1
.Columns(i).Insert
.Columns(i).ColumnWidth = 0.5
Next
End With
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35005 次 |
| 最近记录: |