2013-08-13 3 views
0

셀이 blank이면 행 2를 통해 이동하는 매크로가 있고 Column이 삭제됩니다.조건을 만족하는 모든 열을 삭제하려면 VBA를 조정하십시오.

삭제 부분이 작동하지만 N 개의 빈 셀이 서로 인접 해있는 경우 모든 항목을 제거하려면 N 번 실행해야합니다. 얼마나 많은지 알 수 없으므로 한 번에 모든 항목을 삭제할 수 있습니까? 빈 셀은 서로 옆에있을 수 있습니다.

감사

Sub delete-columns() 
For Each cell In Range(Cells(2, 1), Cells(2, ActiveSheet.UsedRange.Columns.count)) 
    If cell.Value = "" Then cell.EntireColumn.Delete xlToRight 
Next cell 
End Sub 

답변

2

이 2 행에서 공백으로 활성 시트의 모든 열을 삭제합니다 : 당신

Sub DeleteColsWithBlanks() 
Dim ws As Excel.Worksheet 

Set ws = ActiveSheet 
With ws 
    .Range(.Cells(2, 1), .Cells(2, .Columns.Count)).SpecialCells(xlCellTypeBlanks).EntireColumn.Delete 
End With 
End Sub 
+0

감사, 희망으로 작동합니다. – xyz

관련 문제