新的一天,新问题。 我收到了很多帮助,希望你也可以帮助我。我一直在寻找我的问题的解决方案,但没找到。
这是我的代码:
SearchString = "start"
Set aCell = phaseRange.Find(What:=SearchString, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not aCell Is Nothing Then
Set bCell = aCell
ReDim Preserve arrStart(nS)
arrStart(nS) = aCell.Row
nS = nS + 1
Do While ExitLoop = False
Set aCell = phaseRange.FindNext(After:=aCell)
If Not aCell Is Nothing Then
If aCell.Row = bCell.Row Then Exit Do
ReDim Preserve arrStart(nS)
arrStart(nS) = aCell.Row
nS = nS + 1
Else
ExitLoop = True
End If
Loop
Else
End If
写出来:
For i = 1 To nS - 1
Sheets("DataSheet").Select
Sheets("raw_list").Rows(arrStart(i)).Copy
Cells(i, 1).Select
ActiveSheet.Paste
Next
如您所见,我在列中搜索String。当我得到一个结果时,行号存储在一个数组中。在下一个代码片段中,我在整行中写出了匹配。是否有可能不是采用整行,而是以简单的方式选择要复制的行中的哪些列?
感谢帮助
答案 0 :(得分:1)
如果你已经知道了列号,并且你有数组中的行,那么试试这个
Sheets("raw_list").Cells(arrStart(i),5).Copy
这将复制特定行中第5列(Col E)的单元格。