使用VBA复制行并粘贴到不同的工作表中(代码编辑)
我有下面的代码从用户那里获取日期输入。我想做的是:使用VBA复制行并粘贴到不同的工作表中(代码编辑),vba,excel,Vba,Excel,我有下面的代码从用户那里获取日期输入。我想做的是: 在工作表“延迟”的K栏中查找输入日期之前的所有日期 复制整行并将其粘贴到名为“Previous”的其他工作表中 我的代码: Sub Previousweek() Dim userdate userdate = InputBox("Enter the date", "Enter Date", Date) If IsDate(userdate) Then 'logic here End If End Sub 更新代码: Su
- 在工作表“延迟”的K栏中查找输入日期之前的所有日期
- 复制整行并将其粘贴到名为“Previous”的其他工作表中
Sub Previousweek()
Dim userdate
userdate = InputBox("Enter the date", "Enter Date", Date)
If IsDate(userdate) Then
'logic here
End If
End Sub
更新代码:
Sub Previousweek()
Dim userdate
userdate = InputBox("Enter the date", "Enter Date", Date)
Dim rng As Range, cell As Range
Set rng = Range("K2:K200")
For Each cell In rng
If cell.Value < userdate Then
cell.EntireRow.Copy
Sheets("Previous").Range("A65536").End(xlUp).Offset(1, 0).Select
Sheets("Previous").Paste
End If
Next cell
End Sub
查找较小的日期伪代码
Dim rng As Range, cell As Range
Set rng = Range("K2:K200")
For Each cell In rng
if cell.value < userdate then
//TODO copy to previous
end if
Next cell
Dim rng As Range,cell As Range
设置rng=范围(“K2:K200”)
对于rng中的每个单元
如果cell.value
查找较小的日期伪代码
Dim rng As Range, cell As Range
Set rng = Range("K2:K200")
For Each cell In rng
if cell.value < userdate then
//TODO copy to previous
end if
Next cell
Dim rng As Range,cell As Range
设置rng=范围(“K2:K200”)
对于rng中的每个单元
如果cell.value
只需在中使用此工作簿.Sheets(“Previous”)
到要粘贴数据的工作表的名称
Sub Previousweek()
Dim UserDate As String
Dim CeLL As Range
UserDate = InputBox("Enter the date", "Enter Date", Date)
If IsDate(UserDate) Then
With ThisWorkbook.Sheets("Previous")
For Each CeLL In ThisWorkbook.Sheets("Latency").Range("K2:K200").Cells
If CeLL.Value < UserDate Then
CeLL.EntireRow.Copy .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0)
End If
Next CeLL
End With 'ThisWorkbook.Sheets("Previous")
Else
End If
End Sub
Sub-Previousweek()
将UserDate设置为字符串
暗淡单元格作为范围
UserDate=InputBox(“输入日期”、“输入日期”和“日期”)
如果是IsDate(UserDate),则
使用此工作簿.Sheets(“上一页”)
此工作簿中的每个单元格。工作表(“延迟”)。范围(“K2:K200”)。单元格
如果CeLL.Value
只需在中使用此工作簿.Sheets(“Previous”)
到要粘贴数据的工作表的名称
Sub Previousweek()
Dim UserDate As String
Dim CeLL As Range
UserDate = InputBox("Enter the date", "Enter Date", Date)
If IsDate(UserDate) Then
With ThisWorkbook.Sheets("Previous")
For Each CeLL In ThisWorkbook.Sheets("Latency").Range("K2:K200").Cells
If CeLL.Value < UserDate Then
CeLL.EntireRow.Copy .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0)
End If
Next CeLL
End With 'ThisWorkbook.Sheets("Previous")
Else
End If
End Sub
Sub-Previousweek()
将UserDate设置为字符串
暗淡单元格作为范围
UserDate=InputBox(“输入日期”、“输入日期”、“日期”)
如果是IsDate(UserDate),则
使用此工作簿.Sheets(“上一页”)
此工作簿中的每个单元格。工作表(“延迟”)。范围(“K2:K200”)。单元格
如果CeLL.Value
Hmmm的可能副本。。。很好地使用了之前给出的代码(15分钟前询问的其他问题…)。也许是你自己的?这不是一个免费的编码网站!在不同的工作表上的复制/粘贴行上有大量的问题/答案,您应该有足够的答案started@R3uK哈哈,我也注意到了:)@ShaiRado:不能怪他在别人还在回答的时候尝试(特别是在上一个问题上…),但是他用了更多的代码更新了这个问题,所以他读了我的评论^^Hmmm的可能副本。。。很好地使用了之前给出的代码(15分钟前询问的其他问题…)。也许是你自己的?这不是一个免费的编码网站!在不同的工作表上的复制/粘贴行上有大量的问题/答案,您应该有足够的答案started@R3uK哈哈,我也注意到了:)@ShaiRado:不能怪他在别人还在回答的时候尝试(特别是在上一个问题上…),但是他用了更多的代码更新了这个问题,所以他读了我的评论^^是否复制整行并将其粘贴到其他工作表中?是否比较如何复制的日期:。是否复制整行并将其粘贴到其他工作表中?是否比较如何复制的日期:?即使在你发表评论之后?只要让他把整个项目范围发给我们,我们就会为他做(而不是每小时一块一块地做)。至少使用DateDiff
:)@ShaiRado:是的,我仍然在赶着跑10公里!正如在另一篇评论中所说,他尝试了更多,这是一个好的开始!尽管如此,我还是懒得添加DateDiff
,但我也必须将其转换为日期,2个步骤,太长了^^以下是我的帮助,可以帮助您实现这一里程碑:)谢谢:)我想在我的电子邮件中查找SO的支票,但没有:)只是对ego@stackmark:您正在粘贴同一工作簿吗?换床单前它有用吗?说真的?即使在你发表评论之后?只要让他把整个项目范围发给我们,我们就会为他做(而不是每小时一块一块地做)。至少使用DateDiff
:)@ShaiRado:是的,我仍然在赶着跑10公里!正如在另一篇评论中所说,他尝试了更多,这是一个好的开始!尽管如此,我还是懒得添加DateDiff
,但我也必须将其转换为日期,2个步骤,太长了^^以下是我的帮助,可以帮助您实现这一里程碑:)谢谢:)我想在我的电子邮件中查找SO的支票,但没有:)只是对ego@stackmark:您正在粘贴同一工作簿吗?在换床单之前它起作用了吗?