我試圖獲得在我的代碼中識別日期(日期格式爲M/DD/YY HH:MM
)的do-until循環,每次在循環中添加一分鐘然後在該值等於第二個不變的值時終止。以下是我有:被比較Do-Until循環無法識別範圍值
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。對不起,我不是很具體。專業粘貼是爲了防止使用第三方軟件的小故障。
據我所知,A9中的值始終是相同的。 B1中的公式變成了'= C2 + BV2',因爲這兩個單元在循環中都沒有變化,所以B1總是相同的,A9也是如此。因此,如果它不等於RC74(不能分辨是否意味着實際的單元RC74,或者如果這是嘗試使用R1C1格式,不能這樣做)第一個循環將永遠持續循環。 –
什麼不起作用? –
我打賭它被使用'.Select'和'ActiveCell'阻礙了。嘗試改爲直接處理數據。閱讀[如何避免'.Select'](http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros)瞭解一些提示。我強烈建議這樣做。如果您可以在此循環之外發布代碼,我們也可以提供幫助。 – BruceWayne