簡體   English   中英

如果單元格包含特定文本,則移動到新工作簿

[英]If cell contains specific text then move to a new workbook

我有一個大型數據集,第一列是變量 ClientNames。 一些 ClientNames 中包含“Project”一詞,我想使用 VBA 來查找和 select 每個 ClientNames 中包含“Project”一詞,並將這些客戶的整行移動到一個新工作簿中(一個包含所有客戶名稱中包含“項目”的客戶。我該怎么做?

您可以通過使用下面的 VBA 代碼來實現這一點,下面的代碼在第一列中搜索文本“項目”,然后將整行移動到名為 Project 的新工作簿

Option Explicit

Sub project()

Dim lastrow As Long
Dim count As Long
Dim sht As Worksheet
Set sht = ActiveSheet

Dim dst As Workbook
Set dst = Workbooks.Add
dst.SaveAs Filename:="Project"
dst.Sheets.Add.Name = "Project"
count = 1

sht.Activate
lastrow = sht.Cells(Rows.count, 1).End(xlUp).Row
Dim i As Long
    For i = 1 To lastrow
    
        If InStr(1, sht.Cells(i, 1).Value, "Project", vbTextCompare) > 0 Then
        sht.Rows(i).Cut
        dst.Sheets("Project").Rows(count).Insert Shift:=xlDown
        sht.Rows(i).Delete
        count = count + 1
        i = i - 1
        End If
    
    Next i
 End Sub

您可以使用InStr function 來了解“項目”是否在您的單元格中。 然后您可以使用整個行到select您的行,然后將其復制到目標工作表,最后從源工作表中刪除該行。
請注意您的行索引,刪除行后需要更新該索引

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM