【问题标题】:Clear content witha criteria and adjusting cells使用标准和调整单元格清除内容
【发布时间】:2018-05-03 19:44:49
【问题描述】:

Im 试图构建一个 vba 代码,如果单元格 = 0,它将清除内容。但这取决于以前的 vba 代码,它改变了某些单元格的格式。到目前为止,我的代码是:

子宏1()

Application.DisplayAlerts = False

将 lastRow 变暗

Range("A4:A65000").Select
Selection.TextToColumns Destination:=Range("B4"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
    Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
    :="/", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1)), _
    TrailingMinusNumbers:=True
Range("B4").Select

 Range("E4:F4").AutoFill Destination:=Range("E4:F" & Range("A" & Rows.Count).End(xlUp).Row)

 lastRow = Range("A" & Rows.Count).End(xlUp).Row


  lastRow = lastRow + 1
  Rows(lastRow & ":F" & 2 ^ 20).ClearContents


  End Sub

因此,根据代码,我有时会在“G”行中出现很多包含“00”的单元格。

我认为我可以使用代码“Clearcontent”,但我不确定在单元格一直在调整时使用它。

【问题讨论】:

    标签: vba excel


    【解决方案1】:
    1. A 列中找到最后一行。 Last row in column VBA 假设它是第 250 行。假设它是 k
    2. 然后在最后写下:

    k = k + 1
    Rows(k & ":" & 2^20).ClearContents
    

    【讨论】:

    • 但是 A 列的最后一行一直在变化,这取决于我插入了多少日期。
    • @Skyrup - 这就是为什么你应该使用 VBA 函数找到它,每次更新后 - 检查我的答案中的链接。
    • 我只是使用这样的常规代码来查找它: Range("A65536").End(xlup).Select.
    • 如果单元格 A65537 中有数据怎么办?您应该以编程方式找到最后一行。
    • 完美,这正是我想要的。非常感谢,它比构建循环要快得多,这是我的替代方案。
    猜你喜欢
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 2013-11-04
    • 2021-08-19
    • 2016-01-15
    • 1970-01-01
    相关资源
    最近更新 更多