Excel告诉我我的空白单元格不是空白

Van*_*duk 24 excel vba excel-vba

所以在excel中我试图通过使用F5找到空白单元格来删除我的单元格中有空白单元格的空白单元格,然后按Ctrl + - 删除它们,并将单元格向上移动.但是,当我尝试这样做时,它告诉我"没有找到细胞".

我注意到,如果我选择"空白"单元格,Excel仍然会计算它们: 就像在这张照片中这很奇怪.但是如果我在那些选定的单元格上按Delete键,计数就会消失,然后我可以去F5,空白,Ctrl + - 和Shift单元格,它可以工作......

所以我的问题是我怎么能这样做,但Excel认为这些空白单元格不是空白的?我试图通过删除空白单元格,但我有很多数据,并意识到这将花费我很长时间.我需要找到一种方法来在选择的数据中选择这些"空白"单元格.

在此先感谢您的帮助!:)

glh*_*glh 27

选择并清除这些空白单元格以使其空白的简单方法:

  1. ctrl + a或预先选择您的范围
  2. ctrl + f
  3. 离开找到空的并选择匹配整个单元格的内容.
  4. 点击查找全部
  5. ctrl + a选择找到的所有空单元格
  6. 关闭查找对话框
  7. backspacedelete

  • 退格不起作用,也不删除.但是,如果我右键单击并选择"删除...",我可以删除单元格 (2认同)
  • 这实际上比vba解决方案更好(更容易) (2认同)
  • 绝对惊人的解决方案!谢谢 (2认同)

glh*_*glh 19

一个启示:一些空白单元格实际上并不是空白!正如我将展示单元格可以有空格,换行符和真空:

例

快速找到这些细胞,您可以做一些事情.

  1. =CODE(A1)公式将返回一个#VALUE!如果单元格确实为空,否则将返回一个数字.此编号是用于的ASCII编号=CHAR(32).
  2. 如果选择单元格并单击公式栏并使用光标选择全部. 换行选择示例

删除这些:

如果单元格中只有空格,可以使用以下方法轻松删除:

  1. ctrl + h打开查找并替换.
  2. 查找内容中输入一个空格,将替换为空,并确保匹配整个单元格内容在选项中打勾.
  3. 全部替换.

如果你有换行符,那就更难了,需要VBA:

  1. 右键单击工作表选项卡>查看代码.
  2. 然后输入以下代码.请记住,Chr(10)换行符只是根据需要替换它,例如" " & Char(10)是空格和换行符:

    Sub find_newlines()
        With Me.Cells
            Set c = .Find(Chr(10), LookIn:=xlValues, LookAt:=xlWhole)
            If Not c Is Nothing Then
                firstAddress = c.Address
                Do
                    c.Value = ""
                    Set c = .FindNext(c)
                    If c Is Nothing Then Exit Do
                Loop While c.Address <> firstAddress
            End If
        End With
    End Sub
    
    Run Code Online (Sandbox Code Playgroud)
  3. 现在按下代码运行F5.


提供文件后:选择感兴趣的范围以提高性能,然后运行以下命令:

Sub find_newlines()
    With Selection
        Set c = .Find("", LookIn:=xlValues, LookAt:=xlWhole)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                c.Value = ""
                Set c = .FindNext(c)
                If c Is Nothing Then Exit Do
            Loop While c.Address <> firstAddress
        End If
    End With
End Sub
Run Code Online (Sandbox Code Playgroud)

  • 好的,是的!非常感谢!你救了我这么多时间!:) (2认同)

小智 18

这对我有用:

  1. CTR-H调出查找和替换
  2. 留下'查找内容'空白
  3. 将'替换为'更改为唯一的文本,
    在另一个单元格中找不到您肯定的内容(我使用'xx')
  4. 点击"全部替换"
  5. 将第3步中的唯一文本复制到"查找内容"
  6. 删除'替换为'中的唯一文字
  7. 点击"全部替换"


小智 5

总而言之,这很简单。我一直在尝试同样的事情,这就是 VBA 对我有用的方法

Range("A1:R50").Select    'The range you want to remove blanks
With Selection
    Selection.NumberFormat = "General"
    .Value = .Value
End With
Run Code Online (Sandbox Code Playgroud)

问候, 阿南德·兰卡