2010-04-13 146 views
5

伙计我正在寻找一个简单的excel宏,可以将一行从一张表格复制到另一张表格中的另一张表格基于在单元中具有特定单词。我有一张名为“数据”的表单和一个名为“final”的表单。下面是数据Excel Macro根据单个单词在单元格内的一个段落内将一整行从一张表单复制到另一个单元格内

A   B   C    D 
john  mary   555.555.4939 initial reply to phone conversation 
Jim  jack   555.555.5555 floor estimate for bathroom 
jerry  kim   555.555.5553 initial response to phone call 

的eaxmple我想从片材“数据”不是整个行复制到片材的“最终”如果在列d中的数据中包含的任何单词“回复”或单词在该段落内的某处“回应”。

任何提示将非常有义务。

感谢, Ĵ

回答

5

这应该工作

Sub Foo() 
Dim i As Long, iMatches As Long 
Dim aTokens() As String: aTokens = Split("reply,response", ",") 
For Each cell In Sheets("data").Range("D:D") 
    If (Len(cell.Value) = 0) Then Exit For 
     For i = 0 To UBound(aTokens) 
      If InStr(1, cell.Value, aTokens(i), vbTextCompare) Then 
       iMatches = (iMatches + 1) 
       Sheets("data").Rows(cell.Row).Copy Sheets("final").Rows(iMatches) 
      End If 
     Next 
Next 
End Sub 
+0

投票弥补了一小段路,以一个行复制到另一个:WorkSheet1.Rows(ROW1).Copy WorkSheet2.Rows(行2)!其他地方的例子包括循环... – 2013-02-20 10:50:08

相关问题