Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用VBA复制行并粘贴到不同的工作表中(代码编辑)_Vba_Excel - Fatal编程技术网

使用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:您正在粘贴同一工作簿吗?在换床单之前它起作用了吗?