答案 0 :(得分:0)
假设A到F列中的数据
Accept-Encoding:gzip, deflate
答案 1 :(得分:0)
试试这个:
Sub slipp_fix()
Set ww = Application.Selection
Set ww = Application.InputBox("Select first col of table", xTitleId, ww.Address, Type:=8)
For Each C In ww
If C.Value = "" Then
C.Select
Selection.Delete Shift:=xlToLeft
End If
Next
end sub
答案 2 :(得分:0)
这是我的评论的VBA版本,向左移动:
Range("A:A").SpecialCells(xlCellTypeBlanks).Delete xlShiftToLeft
没有向右删除的转变,但根据布局,几乎没有办法。更通用的方法可以是将空白单元格选择向左移动并使用插入移位到右侧,但我不确定如何在没有VBA的情况下执行此操作。 例如,选择F列中的空白单元格并在A列中的相同行上插入相应的单元格:
Intersect(Range("A:A"), Range("F:F").SpecialCells(xlCellTypeBlanks).EntireRow).Insert xlShiftToRight
对于更多随机空白区域,更通用的方法是分别移动每一行:
With ActiveCell.Worksheet.UsedRange ' or change to a different range
.SpecialCells(xlCellTypeBlanks).Delete xlShiftToLeft ' to shift all non-blank cells to the left
For Each area In .SpecialCells(xlCellTypeBlanks).Areas
area.Offset(, .Column - area.Column).Insert Shift:=xlToRight
Next
End With