问题描述
我有2张表:sheet1和sheet2。我的单元格A3(sheet1)中的值不是常数。并且sheet2中的许多文件。我想做的是当单元格A3(Sheet1)中的值与列A(Sheet2)中的值相同时),它将删除整个行,找到该值(Sheet2)。
这是我的尝试。它不工作:没有行被删除。
如果工作表(Sheet1)。范围(A3)。 Text = Worksheets(Sheet2)。Range(A:A)。然后
Dim f As String
f = Worksheets(Sheet1)。Range(A3)
设置c =工作表(Sheet2)。范围(A:A)。Find(f)
工作表(Sheet2)。范围(c.Address())。EntireRow.Delete
结束如果
Sub Test()
Dim ws As Worksheet
对于x = 1 To Rows.Count
If ThisWorkbook.Sheets(Sheet2)。Cells(x,1).Value = ThisWorkbook.Sheets(Sheet1)。Cells(3,1).Value Then ThisWorkbook.Sheets(Sheet2)。Cells x,1).EntireRow.Delete
Next x
End Sub
I have 2 sheets: sheet1 and sheet2. I have a value in cell A3 (sheet1) which is not constant. And many files in sheets2.
What I would like to do, is when the value in cell A3 (Sheet1) is the same as the value in the column A (Sheet2), it will delete the entire row where is find this value (Sheet2).
This is my attempt. It doesn't work: no rows are deleted.
If Worksheets("Sheet1").Range("A3").Text = Worksheets("Sheet2").Range("A:A").Text Then
Dim f As String
f = Worksheets("Sheet1").Range("A3")
Set c = Worksheets("Sheet2").Range("A:A").Find(f)
Worksheets("Sheet2").Range(c.Address()).EntireRow.Delete
End If
Sub Test()
Dim ws As Worksheet
For x = 1 To Rows.Count
If ThisWorkbook.Sheets("Sheet2").Cells(x, 1).Value = ThisWorkbook.Sheets("Sheet1").Cells(3, 1).Value Then ThisWorkbook.Sheets("Sheet2").Cells(x, 1).EntireRow.Delete
Next x
End Sub
这篇关于当第二张表中存在值时,删除整行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!