Копировать целые строки на основе нескольких значений ячеек - PullRequest
0 голосов
/ 21 апреля 2011

Я пытаюсь скопировать целые строки, где два значения не заполнены, а третье значение ячейки равно MS-NORT,
Мой код ниже, но я получаю синтаксическую ошибку .

помогите пожалуйста

Set MK = Sheets("data dump").Range("P1:Q5000")
For Each cell In MK

If cell.Value = "" And Sheets("Data Dump").Range("M1:M5000") <> "MS-NORT" 
Then cell.EntireRow.copy
Sheets("working data").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial
End If
Application.CutCopyMode = False
Next 

1 Ответ

1 голос
/ 21 апреля 2011

Я не совсем уверен, что вы подразумеваете под "где два значения пустые, а третье значение ячейки - MS-NORT"

Я предположил, что вы хотите проверить каждую строку, и если столбец M <> «MS-NORT» и оба столбца P и Q не заполнены, затем скопируйте строку.Этот код сделает это

Sub test()
Dim rngRow As Range, MK As Range, lngrow As Long
Dim varCheckCol1 As Variant, varCheckCol2 As Variant, varCheckCol3 As Variant

Set MK = Sheets("data dump").Range("M1:Q5000")
For Each rngRow In MK.Rows

  varCheckCol1 = rngRow.Value2(1, 1) 'col M
  varCheckCol2 = rngRow.Value2(1, 4) 'col P
  varCheckCol3 = rngRow.Value2(1, 5) 'col Q

  If IsEmpty(varCheckCol2) And IsEmpty(varCheckCol3) And varCheckCol1 <> "MS-NORT" Then
     rngRow.EntireRow.Copy
     Sheets("working data").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).PasteSpecial
  End If

Next

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...