Do-Until循环无法识别范围值

时间:2016-03-03 19:56:57

标签: excel vba

我正在尝试使用我的代码中的do-until循环来识别日期(日期格式为M/DD/YY HH:MM),每次在循环周围添加一分钟,然后在该值等于第二个不变的值。这就是我所拥有的:

Do
    Range("A9").Select
    Selection.Copy
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B1").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=R1C1+R1C72"
    Range("B1").Select
    Selection.Copy
    Range("A9").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A9").Select
Loop Until ActiveCell.value = Range("RC74").value

This is a photo of what my sheet looks like with the data removed in the middle.

比较的两个细胞是BW9和A9。对不起,我不是很具体。专业粘贴是为了防止使用的第三方软件出现故障。

1 个答案:

答案 0 :(得分:1)

您有大量不必要的.SelectActiveSheet语句。

我也担心你以一种你不想要的方式使用R1C1符号。

尝试下面的代码并根据需要调整R1C1表示法,因为很难准确说出您所指的单元格。

Range("B1").FormulaR1C1 = "=RC[-1]+RC[72]" 'this makes B1 = A1+BU72 .. (72 columns from B) change as needed

Do

    Range("A1").Value = Range("A9").Value
    Range("B1").Calculate
    Range("A9").Value = Range("B1").Value

Loop Until Range("A9").Value >= Range("BW9").Value 
相关问题