Я хочу сравнить 2 столбца с другого листа, используя массив и индекс в Excel VBA - PullRequest
0 голосов
/ 04 марта 2019

Я очень новичок в макросе, мне нужно решение для моего требования.Я хочу сравнить 2 столбца на 2 разных листах одной и той же книги, если это значение совпадает, и хочу скопировать и вставить данные из значений sheet1 (столбцы 3,4 и 5) в sheet2 (столбец 3,4,5)

В настоящее время мой код не дает мне результата, пожалуйста, помогите

Sub oldtonew()
  Dim Oldoutcome(1000) As Variant
  Dim newoutcome(1000) As Variant
  Dim I As Integer
  Dim PA1(1000) As String
  Dim PA2(1000) As String
  Dim PA3(1000) As String
  Dim AR(1000) As Variant
  Searchrow = 2
  Sheets("old").Select
  newoutcome(Searchrow) = "Architectural Model"
  'ActiveSheet.Range("S" & Searchrow).Value

   Do Until ActiveSheet.Range("AK" & Searchrow) = ""
     Oldoutcome(Searchrow) = ActiveSheet.Range("AK" & Searchrow).Value
     AR(Searchrow) = ActiveSheet.Range("X" & Searchrow).Value
     PA1(Searchrow) = ActiveSheet.Range("AR" & Searchrow).Value
     PA2(Searchrow) = ActiveSheet.Range("AS" & Searchrow).Value
     PA3(Searchrow) = ActiveSheet.Range("AT" & Searchrow).Value
     If InStr(Oldoutcome(Searchrow), newoutcome(Searchrow)) > 1 Then
       ActiveSheet.Range("Y" & Searchrow).Value = AR(Searchrow)
       ActiveSheet.Range("Z" & Searchrow).Value = PA1(Searchrow)
       ActiveSheet.Range("AA" & Searchrow).Value = PA2(Searchrow)
       ActiveSheet.Range("AB" & Searchrow).Value = PA3(Searchrow)
     End If
     Searchrow = Searchrow + 1
   Loop

   Sheets("Assessment").Select
   Do Until ActiveSheet.Range("S" & Searchrow) = ""
     ActiveSheet.Range("Y" & Searchrow).Value = AR(Index)
     ActiveSheet.Range("Z" & Searchrow).Value = PA1(Index)
     ActiveSheet.Range("AA" & Searchrow).Value = PA2(Index)
     ActiveSheet.Range("AB" & Searchrow).Value = PA3(Index)
     End If
     Searchrow = Searchrow + 1
   Loop
 End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...