我是VBA
的新手,我需要一些帮助来编写代码来执行特定的功能。
我需要能够在“ B ”列中搜索部分字符串,然后将该行输出到另一张表格中。
例如, 我需要将所有包含“ MOTOR ”字样的行作为“ B ”列中字符串的一部分,并将这些行粘贴到“表2 < / strong>“栏目中的刺痛” B “可能有各种各样的字符串,例如” TEFCMOTOR286B2 “或” MOTORSLIDEBASE286B2 “,我需要复制具有前一个字符串的两个行并将它们放入“表2 ”的列表中。需要复制的行数将有所不同,有时不会出现任何部分字符串“完全 MOTOR 。
如果您需要更多信息,请与我们联系。
答案 0 :(得分:0)
对于宏录制器
来说,这是一个完美的工作答案 1 :(得分:0)
如果从Sheet1复制到Sheet2,可以试试这个。
Option Explicit
Public Sub TransferMotor()
Dim lngLastRow As Long
Dim lngRow As Long
Dim strValue As String
Dim lngRowOutput As Long
' where does the data end in Sheet1
lngLastRow = Sheet1.UsedRange.Rows.Count
If lngLastRow = 1 Then Exit Sub ' no data
' Clear down sheet2, assume we have column headings in row 1 we want to keep
Sheet2.Range("2:1048576").Clear
lngRowOutput = 2 ' where are we going to write the values to in Sheet2 when we find a "MOTOR" phrase
For lngRow = 2 To lngLastRow
strValue = Sheet1.Cells(lngRow, 2).Value ' get value from column B
If InStr(1, strValue, "MOTOR", vbTextCompare) > 0 Then ' can we find "MOTOR" in the text
Sheet1.Rows(lngRow).Copy
Sheet2.Rows(lngRowOutput).PasteSpecial
lngRowOutput = lngRowOutput + 1
End If
Next lngRow
End Sub