如果H列的单元格中有日期,如何将整行复制到工作表2?

时间:2019-04-17 17:36:53

标签: excel vba date

我正在尝试搜索(如果工作表H中的列mechanical Equip.有任何日期,则将整行复制到工作表off rent的下一个可用行。它正在处理{{ 1}}是否有日期。

mechanical equip.

2 个答案:

答案 0 :(得分:0)

如果您使用For each myDate in range("H2:H6000")而不是设置范围?

Sub CopyRowWithDates()
   Application.EnableEvents = False
   Application.ScreenUpdating = False

   Dim lrowcompleted As String
   Dim myDate as String

  For each myDate in range("H2:H6000")

   On Error Resume Next
   Application.EnableEvents = False

        If myDate = "mm/dd/yyy" Then

            lrowcompleted = Sheets("OFF RENT").Cells(Rows.Count, "A").End(xlUp).ROW

            Range("A" & myDate.ROW & ":N" & myDate.ROW).Copy Sheets("OFF RENT").Range("A" & lrowcompleted + 1)
            Else
        End If

    Application.EnableEvents = True
    Application.Screenupdating = True
End Sub

我更喜欢使用Range("A1048576").End(xlUp).Row而不是Cells(Rows.Count,"A").End(xlUp).ROW

答案 1 :(得分:0)

我修改了一个不同的代码,而这个代码按我需要的方式工作。感谢您的帮助。

   Private Sub CommandButton5_Click()
Dim id As String
Dim PO As String
Dim finalrow As Integer
Dim i As Integer
Dim lrowcompleted As String

id = TextBox19.Value
finalrow = Sheets("ALL P.O. INFO").Range("D6000").End(xlUp).row

For i = 2 To finalrow
    If Sheets("ALL P.O. INFO").Cells(i, 4) = id Then
        Sheets("ALL P.O. INFO").Cells(i, 8).Value = TextBox17.Value
    End If

    If Sheets("MECHANICAL EQUIP.").Cells(i, 4) = id Then
            Sheets("MECHANICAL EQUIP.").Cells(i, 8).Value = TextBox17.Value
            lrowcompleted = Sheets("OFF RENT").Range("A6000").End(xlUp).row
            Sheets("MECHANICAL EQUIP.").Range("A" & i & ":N" & i).Copy Sheets("OFF RENT").Range("A" & lrowcompleted + 1)


    End If