Попытка сравнить данные на 2 листах и ​​заменить, если они разные - PullRequest
0 голосов
/ 25 марта 2019

Я надеюсь, что кто-то может помочь мне с кодированием этого.У меня есть 2 листа данных.

Wks 1: «Корректировки продаж» Wks 2: «Новые продажи по периодам»

Оба настроены в следующем формате.Если клиент работает на 1-й неделе, мне нужен код для сравнения данных каждого месяца с данными на 2-й неделе. Если они не совпадают, данные на 2-й неделе будут заменены.

Account#    month1    month2    month3....etc.
account1    $         $         $  
account2    $         $         $  
account3    $         $         $  

Я, вероятно, смогу заставить это работать, если я начну создавать переменные для номеров столбцов, номеров строк и результатов строк на каждом листе, но я знаю, что смогу сделать это более эффективно.Могу ли я использовать заголовки столбцов для сопоставления данных?

Ниже приведено то, что я начал писать.

firstrow_saleschanges = Worksheets("Sales Corrections").Cells.Find("Customer Name", SearchOrder:=xlByRows, SearchDirection:=xlUp).Row
lastrow_saleschanges = Worksheets("Sales Corrections").Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
firstcol_saleschanges = Worksheets("Sales Corrections").Cells.Find("*", SearchOrder:=xlColumns, SearchDirection:=xlNext, LookIn:=xlValues).Column
lastcol_saleschanges = Worksheets("Sales Corrections").Cells.Find("*", SearchOrder:=xlColumns, SearchDirection:=xlPrevious, LookIn:=xlValues).Column

For numrow = firstrow_saleschanges To lastrow_saleschanges
    customer_account = Worksheets("Sales Corrections").Cells(numrow, "A")
    sales_row_match = Worksheets("New Sales by Period").Cells.Find(customer_account, SearchOrder:=xlByRows, SearchDirection:=xlUp).Row

    For colcount = firstcol_saleschanges To lastcol_saleschanges
        If Worksheets("Sales Corrections").Cells(numrow, firstcol_saleschanges) <> Worksheets("New Sales by Period").Cells(sales_row_match, firstcol_saleschanges) Then
            Worksheets("Sales Corrections").Cells(numrow, firstcol_saleschanges).Copy
            Worksheets("New Sales by Period").Cells(sales_row_match, firstcol_saleschanges).PasteSpecial xlPasteValues
        End If
    Next colcount
Next numrow
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...