根据关键字查找要复制的特定范围

时间:2018-04-24 16:01:45

标签: excel vba excel-vba

您好我在Excel中有以下VBA代码

On Error Resume Next

Dim wk As Worksheet
Set wk = Sheets("ABC")
With Sheets("DEF")
   .Range("A6", .Columns("A").Find("", , xlValues, xlWhole).Offset(-1)).EntireRow.Copy _
    wk.Range("A" & wk.Cells(Cells.Rows.Count, "A").End(xlUp).Row + 1)
End With

此代码的目的是从工作表A6中的单元格DEF开始(A6包含单词"日期")并复制A6下的工作表范围直到第一个空白行然后粘贴到工作表ABC。

你可以帮我改进一下这段代码来找到" Date"目前位于A6单元格并执行相同的任务? (即让我们说下一次"日期"位于单元格A1中)

感谢。

2 个答案:

答案 0 :(得分:0)

typedef

答案 1 :(得分:0)

您需要声明变量(“日期”和最后一行)。

Dim lRow As Long
Dim fWord As Range

Dim wk As Worksheet
Set wk = Sheets("ABC")

    With Sheets("DEF")
        lRow = Range("A" & Rows.Count).End(xlUp).Row
        Set fWord = Columns("A").Find(what:="Date", LookIn:=xlValues, lookat:=xlWhole)

        If Not fWord Is Nothing Then Rows(fWord.Row & ":" & lRow).Copy _
        wk.Range("A" & wk.Cells(Cells.Rows.Count, "A").End(xlUp).Row + 1)
    End With