5tas
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Добрый вечер. Макрос сравнивает имена в двух книгах и, если они совпадают, то он копирует имена и и числовое значение из соседней ячейки в одну из сравниваемых книг на другой лист. Но проблема в том, что значение rowLast определяется неправильно, если активен файл "2008 Sep.xls", а если активен "Имена сотрудников1.xls", то неправильно определяется значение rowLastpp. Из-за этих неправильных значений сравниваются не все значения. Скажите пожалуйста, что можно сделать.: Код: Sub Mail() Dim w1, w2, w3 As Worksheet Dim rowLast, rowLastpp, iiRow, iRow As Long Dim n As Integer Set w1 = Workbooks("Имена сотрудников1.xls").Worksheets("Names") Set w2 = Workbooks("2008 Sep.xls").Worksheets("2008 Sep") Set w3 = Workbooks("Имена сотрудников1.xls").Worksheets("Лист4") rowLast = Cells(w1.UsedRange.Rows.Count + 1, "A").End(xlUp).Row rowLastpp = Cells(w2.UsedRange.Rows.Count + 1, "A").End(xlUp).Row MsgBox rowLast MsgBox rowLastpp w3.Cells(1, "A").Value = "Пользователи" w3.Cells(1, "B").Value = "Полученный траффик (почта)" n = 3 For iiRow = 1 To rowLastpp For iRow = 1 To rowLast If w2.Cells(iiRow, "B").Value = w1.Cells(iRow, "A").Value Then w3.Cells(n, "A").Value = w2.Cells(iiRow, "B").Value w3.Cells(n, "B").Value = w2.Cells(iiRow, "D").Value n = n + 1 End If Next iRow Next iiRow End Sub |
|