动态删除一系列 Excel 单元格中的空白

标签 dynamic excel vba

我有一个命名的数据范围,称为“数据”。我正在尝试找到一个公式或数组公式,它将返回新的单元格区域中的数据,但会丢失所有空白行。

数据是:

row   x    y    
1     A    77    
2          
3     B    23    
4     A    100    
5    

我的新范围是:

row    x    y    
1     A    77    
3     B    23    
4     A    100    

如果空白行位于数组末尾也没关系。到目前为止我还很困惑

最佳答案

为此,您应该使用特殊的单元格方法。使用 vba 或手动。

手动

2007/2010

选择A列
主页选项卡 - 查找并选择 - 转到特殊项 - 空白 - 确定
首页选项卡 - 删除单元格 - 整行 - 确定

VBA

Sub DeleteBlanks()
    Activesheet.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub

如果您想完整保留原始数据并将范围复制到另一张工作表,请尝试以下操作:

Sub DeleteBlanks()

    Dim vArray As Variant
    '// Get an array of your data
    vArray = Sheet1.UsedRange
    '// Copy the data to another sheet
    Sheet2.Range("A1").Resize(UBound(vArray, 1), UBound(vArray, 2)).Value = vArray
    '// Delete blanks
    Sheet2.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Delete

End Sub

公式

如果您确实需要公式,请查看此处:

Remove Blanks - Array Formula

关于动态删除一系列 Excel 单元格中的空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7068782/

相关文章:

class - 一起使用表单和类的 VBA Excel 最佳实践?

c++ - 动态库的链接问题

sql-server - 如何执行动态创建的sql语句

javascript - Django 动态字段 - 无法从模板中添加的多个行获取数据

database - 如何从 vb.net 中的 tablelayoutpanel 中的文本框访问值

vba - 引号VBA

excel - Folder.Items 中缺少发件人、SenderEmailAddress

regex - 将 Excel 中的 2 个列表与 VBA 正则表达式进行比较

python - 当文件路径中有空格时在命令行中运行 exe 文件时出现问题

vba - Excel - 是否可以使字符在范围内显示为 "*"?