2017-06-14 52 views
-2

如果這很平凡,我很抱歉,但我很努力地記住visual basic的語法,因爲它已經這麼久了。在excel中運行一個列並根據vlookup刪除某些文本

我在D列的單元格中需要刪除(國家名稱)的文本。我有一個包含所有國家名稱的單獨表格,所以我認爲我可以通過單元格遍歷列單元格並檢查是否有任何單元格的文本與我在單獨的工作表上具有的國家/地區表格的文本相匹配。 (即,如果它與'deletME'相匹配就改變了文本的查找)

謝謝!

+0

[This](http://www.siddharthrout.com/2011/07/14/find-and-findnext-in-excel-vba/ )會讓你開始 –

回答

1

這是一個簡單的解決方案,它使用數組而不是範圍。只需根據需要插入國家名稱到陣列:

Sub deletingcountries() 
Dim sht As Worksheet 
Dim i As Long 
Dim lastrow As Integer 

Set sht = ActiveWorkbook.Worksheets("Sheet1") 
lastrow = sht.Cells(sht.Rows.Count, "D").End(xlUp).Row 

Dim countries As Variant, country As Variant 
countries = Array("Country1", "Country2", "Country3", "Country4", "Country5") 'add however many countries necessary 

For i = 1 To lastrow 
    For Each country In countries 
     If InStr(ActiveWorkbook.Worksheets("Sheet1").Range("D" & i).Value, country) Then 
      ActiveWorkbook.Worksheets("Sheet1").Range("D" & i).Value = "deletME" 
     End If 
    Next country 
Next i 
End Sub 
相關問題