是否有一个 VBA 字符串来选择曾经有一个空白公式的复制单元格?

罗宾·威曼

我有一个 excel 文件,其中所有内容都通过宏进行控制。有一次,我将文件从一张工作表移动到另一张工作表,这些数据存储为积压工作。

然后我尝试选择空白单元格并删除该行(如果为真)。但单元格显示为空白,但不是。

所以我将它从工作表 A 移动到工作表 B。工作表 A 中的数据被移动并粘贴为工作表 B 中的值。被移动的数据有两列:A 列包含项目 ID,B 列包含项目的日期不复存在(停止日期)。

在工作表 A 中,停止日期通过一个简单的公式 (=+IF(O5<>"";O5;N5)) 填充,如果没有新的停止日期输入,则从积压中获取。

现在,如果既没有新的停止日期输入也没有任何积压,则该单元格为空白。

当宏将数据从工作表 A 复制并粘贴(作为值)到工作表 B 时,B 列由空白单元格填充(按预期),但由于缺乏更好的词,有些东西是不可见的。几乎就像会有格式一样,当您遇到除 ANSI 以外看不到的隐藏字符时。

如果我选择任何空单元格并按删除,然后运行“转到特殊...”和空白,该单元格将被函数选中。

我正在使用这一行删除空格:

Columns("B").SpecialCells(xlBlanks).EntireRow.Delete

这是我复制/粘贴和处理停止日期部分的代码段:

Sheets("Dashboard").Select
    Range("B3:Q400").Select
    Selection.Copy
    Sheets("CeaseDate").Select
    Range("F1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Columns("G:T").Select
    Application.CutCopyMode = False
    Selection.Delete Shift:=xlToLeft
    Range("F1:G1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Range("A" & Rows.Count).End(xlUp).Offset(1).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    Columns("F:G").Select
    Selection.Delete Shift:=xlToLeft

    Columns("B").SpecialCells(xlBlanks).EntireRow.Delete 'Remove rows that does not contain a Cease Date <--- This does not work since it wont treat the blank cells as blank

'Range converting to date format

    Columns("B:B").Select
    Selection.NumberFormat = "m/d/yyyy"

    Columns("A:B").Select
    ActiveSheet.Range("A:B").RemoveDuplicates Columns:=Array(1, 2), _
        Header:=xlYes
    Selection.End(xlUp).Select
罗宾·威曼

所以我找到了一个解决方案,我无法解释为什么会出现这个问题,但显然它至少从 2003 版开始就出现在 Excel 中。

问题:当我复制单元格并使用 paste-special-value 时,出现空白的单元格将无法通过测试=ISBLANK()并返回FALSE值。然而,没有任何东西可以从单元格中复制或标记。如果我选择明显空白的单元格并按删除或退格键,=ISBLANK()现在将返回一个TRUE值。

解决方案

  1. 我选择带有明显空白单元格的区域
  2. 打开查找/替换功能并将查找内容:空白(没有空格或任何内容),然后在替换为:输入您知道不会出现在电子表格其他任何地方的字符串或单词。
  3. 单击全部替换
  4. 所有明显空白的单元格都将替换为单词
  5. 现在取这个词并用空查找/替换它
  6. 替换的单元格现在将真正空白并通过=ISBLANK()测试

我最初在这里找到了这个(相当晦涩的)解决方案

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel VBA宏复制单元格并粘贴到另一个

来自分类Dev

复制单元格并移动到另一个单元格(偏移)-VBA BEGINNER

来自分类Dev

VBA Excel-复制单元格值并将值粘贴在另一个单元格的字符之间

来自分类Dev

VBA 是否可以尝试为单元格分配一个太长的公式?

来自分类Dev

VBA-将字符串中的前三个字符复制到另一个单元格中

来自分类Dev

从另一个单元格(VBA)的字符串中删除一个单元格中的值

来自分类Dev

Excel VBA选择每隔一个单元格

来自分类Dev

如何选择从第一个非黑色单元格到最后一个非空白单元格(VBA)的单元格范围?

来自分类Dev

Excel 2013:VBA将公式从一个单元格复制到下一个单元格

来自分类Dev

Excel VBA向下复制单元格列表,反复删除第一个元素并重复最后一个元素

来自分类Dev

是否有一个 excel 公式可以用来将一个单元格中的字符串中的所有蓝色字体数字求和到另一个单元格中?

来自分类Dev

VBA验证如果范围中的一个单元格具有值,则所有单元格都应具有一个值

来自分类Dev

VBA验证如果范围中的一个单元格具有值,则所有单元格都应具有一个值

来自分类Dev

我有一个vba宏,可以复制最后一个单元格的值,并用红色突出显示粗体文本

来自分类Dev

Excel 用户窗体/VBA 将 CheckBox 和 TextBox 组合成一个单元格字符串

来自分类Dev

vba excel:如何将字符从一个单元格复制到另一个单元格

来自分类Dev

查找没有VBA的最后一个非空单元格ADDRESS

来自分类Dev

查找没有VBA的最后一个非空单元格ADDRESS

来自分类Dev

使用excel VBA将所有更改数据从一个单元格捕获到另一个单元格

来自分类Dev

有公式来删除所有字符在最后一个字符(可能有一个以上)右边的vba问题

来自分类Dev

将数据复制到下一个可用的空白单元格 excel vba

来自分类Dev

使用VBA在一个单元格中放置多个公式

来自分类Dev

vba 输入公式引用另一个动态工作表中的单元格

来自分类Dev

VBA:插入最后一个单元格+1

来自分类Dev

使用Excel vba查找并选择B列中的第一个空白单元格

来自分类Dev

在Excel VBA中创建一个函数以测试单元格是否包含某个字符

来自分类Dev

VBA动态数据不均匀时如何选择并复制到最后一个单元格

来自分类Dev

数据验证器VBA可以将一个单元格中的字符串中的值与另一个单元格中的值进行比较

来自分类Dev

如何在Excel VBA中将所有单元格颜色从一个工作簿复制到另一工作簿?

Related 相关文章

  1. 1

    Excel VBA宏复制单元格并粘贴到另一个

  2. 2

    复制单元格并移动到另一个单元格(偏移)-VBA BEGINNER

  3. 3

    VBA Excel-复制单元格值并将值粘贴在另一个单元格的字符之间

  4. 4

    VBA 是否可以尝试为单元格分配一个太长的公式?

  5. 5

    VBA-将字符串中的前三个字符复制到另一个单元格中

  6. 6

    从另一个单元格(VBA)的字符串中删除一个单元格中的值

  7. 7

    Excel VBA选择每隔一个单元格

  8. 8

    如何选择从第一个非黑色单元格到最后一个非空白单元格(VBA)的单元格范围?

  9. 9

    Excel 2013:VBA将公式从一个单元格复制到下一个单元格

  10. 10

    Excel VBA向下复制单元格列表,反复删除第一个元素并重复最后一个元素

  11. 11

    是否有一个 excel 公式可以用来将一个单元格中的字符串中的所有蓝色字体数字求和到另一个单元格中?

  12. 12

    VBA验证如果范围中的一个单元格具有值,则所有单元格都应具有一个值

  13. 13

    VBA验证如果范围中的一个单元格具有值,则所有单元格都应具有一个值

  14. 14

    我有一个vba宏,可以复制最后一个单元格的值,并用红色突出显示粗体文本

  15. 15

    Excel 用户窗体/VBA 将 CheckBox 和 TextBox 组合成一个单元格字符串

  16. 16

    vba excel:如何将字符从一个单元格复制到另一个单元格

  17. 17

    查找没有VBA的最后一个非空单元格ADDRESS

  18. 18

    查找没有VBA的最后一个非空单元格ADDRESS

  19. 19

    使用excel VBA将所有更改数据从一个单元格捕获到另一个单元格

  20. 20

    有公式来删除所有字符在最后一个字符(可能有一个以上)右边的vba问题

  21. 21

    将数据复制到下一个可用的空白单元格 excel vba

  22. 22

    使用VBA在一个单元格中放置多个公式

  23. 23

    vba 输入公式引用另一个动态工作表中的单元格

  24. 24

    VBA:插入最后一个单元格+1

  25. 25

    使用Excel vba查找并选择B列中的第一个空白单元格

  26. 26

    在Excel VBA中创建一个函数以测试单元格是否包含某个字符

  27. 27

    VBA动态数据不均匀时如何选择并复制到最后一个单元格

  28. 28

    数据验证器VBA可以将一个单元格中的字符串中的值与另一个单元格中的值进行比较

  29. 29

    如何在Excel VBA中将所有单元格颜色从一个工作簿复制到另一工作簿?

热门标签

归档