首页 > 解决方案 > 填写行范围中的单元格,然后将活动单元格设置为下一行

问题描述

我正在尝试创建一个自动 Excel 文件,它将在其中将一个单元格复制到另一个单元格。我已经做了一个计时器,它将在其中启动和停止。一旦它停止,我现在可以将它复制到特定的单元格(例如 J11),但我现在需要的是,每次我停止计时器时,它都会将时间复制到下一行(J12)等等。所以每次我停止计时器时,它都会将值复制到下一个行单元格。

到目前为止,这是我的代码。

Dim Start As Single, RunTime As Single
Dim ElapsedTime As String



Range("A1").Value = 0
Range("K8").Value = "In Progress"
Range("K8").Interior.Color = 5296274

Start = Timer

Do While Range("A1").Value = 0

DoEvents
RunTime = Timer
ElapsedTime = Format((RunTime - Start) / 86400, "hh:mm:ss")
Range("C4").Value = ElapsedTime
Application.StatusBar = ElapsedTime

Loop

Range("C4").Value = ElapsedTime
Range("K8").Interior.Color = 192
Range("K8").Value = "Ended"
Application.StatusBar = False

Application.Wait DateAdd("s", 3, Now) ' wait for 3 seconds

Range("K8").Interior.Color = RGB(255, 255, 255)
Range("K8").Value = ""
Range("I5").Value = ""
Range("A1").Value = 0
Range("C4").Value = 0

Range("F8").Copy Range("E11")
Range("F9").Copy Range("F11") <---this is static, this is where I want it to be dynamic.

标签: excelvba

解决方案


您可以使用以下代码:

'Set Active Cell
 eRow = ActiveSheet.Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).Row


 Cells(eRow, 5).Value = Range("F8").Value
 Cells(eRow, 6).Value = Range("F9").Value

推荐阅读