Van*_*duk 24 excel vba excel-vba
所以在excel中我试图通过使用F5找到空白单元格来删除我的单元格中有空白单元格的空白单元格,然后按Ctrl + - 删除它们,并将单元格向上移动.但是,当我尝试这样做时,它告诉我"没有找到细胞".
我注意到,如果我选择"空白"单元格,Excel仍然会计算它们:
这很奇怪.但是如果我在那些选定的单元格上按Delete键,计数就会消失,然后我可以去F5,空白,Ctrl + - 和Shift单元格,它可以工作......
所以我的问题是我怎么能这样做,但Excel认为这些空白单元格不是空白的?我试图通过删除空白单元格,但我有很多数据,并意识到这将花费我很长时间.我需要找到一种方法来在选择的数据中选择这些"空白"单元格.
在此先感谢您的帮助!:)
glh*_*glh 27
选择并清除这些空白单元格以使其空白的简单方法:
glh*_*glh 19
一个启示:一些空白单元格实际上并不是空白!正如我将展示单元格可以有空格,换行符和真空:

要快速找到这些细胞,您可以做一些事情.
=CODE(A1)公式将返回一个#VALUE!如果单元格确实为空,否则将返回一个数字.此编号是用于的ASCII编号=CHAR(32).
删除这些:
如果单元格中只有空格,可以使用以下方法轻松删除:
如果你有换行符,那就更难了,需要VBA:
然后输入以下代码.请记住,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)现在按下代码运行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)
小智 18
这对我有用:
小智 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)
问候, 阿南德·兰卡
| 归档时间: |
|
| 查看次数: |
175678 次 |
| 最近记录: |