VBA仅复制非空白单元格

时间:2017-02-20 10:57:28

标签: excel vba excel-vba

是否有人如何代替静态范围:

 '~~> Copy the range
    wsI.Range("A1:K50").Copy

将其更改为动态,其中A1:A50的计算取决于非空白单元格。

因此,如果Sheet1有23行,其余部分为空,那么范围是:A1:K23?

1 个答案:

答案 0 :(得分:0)

以防万一有人寻找答案:

问题 - 从我有公式的其他工作表中复制数据时,粘贴的单元格为空白,但实际上并不是空白。它拥有某种“无所谓”......

  • 解决方案,SpecialCells(xlCellTypeVisible)。复制数据并使用Paste:= xlPasteValuesAndNumberFormats粘贴到同一工作簿中(它保存日期值,因为这是我需要的东西)。然后使用“查找和替换”代码清除“空白但不是空白”单元格。

“~~>找到“”并替换为pneumonoultramicroscopicsilicovolcanoconiosis

Worksheets("paste").Range("A1:K500").Cells.Replace What:="", Replacement:="pneumonoultramicroscopicsilicovolcanoconiosis", LookAt:= _
    xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False

“~~>找到pneumonoultramicroscopicsilicovolcanoconiosis并替换为“”

Worksheets("paste").Range("A1:K500").Cells.Replace What:="pneumonoultramicroscopicsilicovolcanoconiosis", Replacement:="", LookAt:= _
    xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False