Created
December 5, 2017 06:27
-
-
Save evgenylavelin-xx/a4128b18ef9c2a8228e78dfc2e885277 to your computer and use it in GitHub Desktop.
Необходимо было вставить в определенное место на Лист1 скопированные ячейки из Лист2 и заполнить определенную ячейку данными, найденными на Лист3...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Sub correctSheet() | |
| Dim lastRows As Long, dateDog As String, FIO As String | |
| Application.DisplayAlerts = False | |
| Sheets("Лист2").Select | |
| Range("A1:C1").Select | |
| 'Копируем ячейки, которые необходимо будет вставить на Лист1 | |
| Selection.Copy | |
| Sheets("Лист1").Select | |
| Range("A1").Select | |
| lastRows = 0 | |
| Do | |
| 'Ищем следующий блок для корректировки по уникальному для каждого блока значению | |
| resFind = Cells.Find(What:="Значение в ячейке, по которому определяем все остальные ячейки для редактирования", After:=ActiveCell, LookIn:= _ | |
| xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ | |
| xlNext, MatchCase:=False, SearchFormat:=False).Activate | |
| If resFind And ActiveCell.Row > lastRows Then | |
| lastRows = ActiveCell.Row | |
| ActiveSheet.Paste | |
| 'Формируем значение, по которому в Лист3 будем искать значение для вставки в текущий блок на Лист1 | |
| 'Значение ищем относительно найденной раньше уникальной для каждого блока значению | |
| FIO = ActiveCell.Offset(-6, -1).Value + " " + ActiveCell.Offset(-5, -1).Value | |
| Sheets("Лист3").Select | |
| resFindDateDog = Cells.Find(What:=FIO, After:=ActiveCell, LookIn:= _ | |
| xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ | |
| xlNext, MatchCase:=False, SearchFormat:=False).Activate | |
| If resFindDateDog Then | |
| dateDog = ActiveCell.Offset(0, 1).Value | |
| Else | |
| dateDog = "" | |
| End If | |
| Sheets("Лист1").Select | |
| If resFindDateDog Then | |
| ActiveCell.Offset(3, -3).Value = "Часть текста, который необходимо было подставить " + dateDog | |
| End If | |
| Else | |
| Exit Do | |
| End If | |
| Loop While True | |
| Application.DisplayAlerts = True | |
| End Sub |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment