【问题标题】:Excel VBA: Replace Range('Cell).Select with an If StatementExcel VBA:用 If 语句替换 Range('Cell).Select
【发布时间】:2014-05-23 13:00:20
【问题描述】:

我正在使用 Excel Visual Basic for Applications (VBA)

我有一个宏,它正在选择一组单元格,将它们剪切并粘贴到用户选择的另一个工作表中定义的单元格中。但是,我需要让宏在用户选择的电子表格中查找空行(表示为 0),因为数据可能已经在要粘贴的位置。

我的代码:

Sub Button11_Click()
'
' Button11_Click Macro
'

'
    Range("A2:K2").Select
    Selection.Cut
    Sheets(Application.InputBox("Type desired Team")).Select
    Range("B4").Select
    Sheets("ImporterSheet").Select
End Sub

基本上,

Range(B4).Select

需要替换为

Range(If ActiveCell <> 0 then ActiveCell.Offset(1,0). If ActiveCell = 0 then paste data here)

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    试试这个:

    Range(Range("B:B").Find(0, [B1]).Address).Select
    

    它选择Column B 中包含0 的第一个单元格。
    这是你需要的吗?

    顺便说一句,请尝试阅读 THIS,这绝对是一本可以改进编码的好书。

    【讨论】:

    • 很好,但它把它放在单元格 B1 中,我需要它开始在单元格 B4 处寻找 0。
    • 然后把[B1]改成[B4]
    • 谢谢,但现在我收到“错误 91:对象变量或未设置块变量”及其在 Range(Range("B:B").Find(0, [B1]).地址).选择
    猜你喜欢
    • 2016-11-20
    • 2013-10-27
    • 1970-01-01
    • 2017-11-30
    • 2018-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多