【发布时间】:2018-05-03 11:47:23
【问题描述】:
希望能快速提问。下面的代码就像我需要的那样工作,但是,它似乎没有将行复制到另一张表。事实上...... excel 似乎对 p = p + 1 没有任何作用。我确信这是一个容易犯的错误,但我似乎找不到问题所在。关于为什么这可能不会发生的任何想法?非常感谢。
Sub Pending(): Dim wp As Worksheet, wa As Worksheet, a As Long, p As String
Set wp = Sheets("Pending"): Set wa = Sheets("Projects"):
p = Application.Max(3, wp.Range("A" & Rows.Count).End(xlUp).Row + 1)
For a = 5 To wa.UsedRange.Rows.Count
If wa.Range("Q" & a) = "Move" Then
wa.Range("A" & a).Resize(1, 19).Value = wa.Range("A" & p).Resize(1, 19).Value
wp.Range("A" & p) = "": p = p + 1:
End If
Next a
End Sub
【问题讨论】:
-
这对我来说毫无意义。你确定你没有在至少两个地方有 a 和 p 倒退吗?
-
为什么要标记google-spreadsheet?
-
我建议您正确地格式化和缩进您的代码,不要使用冒号
:代替换行符。这会使您的代码更加混乱且可读性更低。更好的可读性使您的代码更易于维护和调试,从而减少问题。 -
我能够弄清楚这一点。正如您所指出的,这是由于我混淆了代码的某些部分。谢谢。