Здравствуйте уважаемые ГУРУ. Не могу реализовать задуманную задачу по переносу данных с определенных ячеек одного листа на другой лист в определенный ячейки по условию с последующим удалением строки на первом листе. А именно: с первого листа (Список СИ) перенести на значение ячейки S в ячейку А1 на листе "Журнал выданных свидетельств", значение ячейки Т1 в ячейку В1, значение D1 в ячейку D1 и значение Н1 в ячейку Е1 по условию ячейки R "Годен" с последующим удалением строки на листе Список СИ. Попытался макрорекордером, но увы, не все так получается как хотелось бы. Прошу помощи в реализации задуманного.
Здравствуйте уважаемые ГУРУ. Не могу реализовать задуманную задачу по переносу данных с определенных ячеек одного листа на другой лист в определенный ячейки по условию с последующим удалением строки на первом листе. А именно: с первого листа (Список СИ) перенести на значение ячейки S в ячейку А1 на листе "Журнал выданных свидетельств", значение ячейки Т1 в ячейку В1, значение D1 в ячейку D1 и значение Н1 в ячейку Е1 по условию ячейки R "Годен" с последующим удалением строки на листе Список СИ. Попытался макрорекордером, но увы, не все так получается как хотелось бы. Прошу помощи в реализации задуманного.bosika
Здравствуйте! Посмотрите может поможет, но это не очень по фэнь шую...[vba]
Код
Sub Макрос2() Dim iLastRow As Long, rw As Long Dim x As Integer iLastRow = Cells(Rows.Count, 1).End(xlUp).Row With Sheets("Журнал выданных свидетельств") .Range("A2:H500").ClearContents rw = 2 For i = 3 To iLastRow Step 6 i = i - x x = 0 If Cells(i, 18) = "Годен" Then .Cells(rw, 1).Resize(6, 2).Value = Cells(i, 19).Resize(6, 2).Value .Cells(rw, 4).Resize(6).Value = Cells(i, 4).Resize(6).Value .Cells(rw, 5).Resize(6).Value = Cells(i, 8).Resize(6).Value rw = rw + 6 Rows(i).Resize(6).Delete x = 6 iLastRow = Cells(Rows.Count, 1).End(xlUp).Row End If Next End With End Sub
[/vba]
Здравствуйте! Посмотрите может поможет, но это не очень по фэнь шую...[vba]
Код
Sub Макрос2() Dim iLastRow As Long, rw As Long Dim x As Integer iLastRow = Cells(Rows.Count, 1).End(xlUp).Row With Sheets("Журнал выданных свидетельств") .Range("A2:H500").ClearContents rw = 2 For i = 3 To iLastRow Step 6 i = i - x x = 0 If Cells(i, 18) = "Годен" Then .Cells(rw, 1).Resize(6, 2).Value = Cells(i, 19).Resize(6, 2).Value .Cells(rw, 4).Resize(6).Value = Cells(i, 4).Resize(6).Value .Cells(rw, 5).Resize(6).Value = Cells(i, 8).Resize(6).Value rw = rw + 6 Rows(i).Resize(6).Delete x = 6 iLastRow = Cells(Rows.Count, 1).End(xlUp).Row End If Next End With End Sub
bosika, предлагаю безмакросный недоделанный вариант (по аналогии сами можете доделать) и без удаления(с фильтрацией) как-бы и база останется, времени нет пока, но суть должна быть понятна зеленым выделено сделанное..
bosika, предлагаю безмакросный недоделанный вариант (по аналогии сами можете доделать) и без удаления(с фильтрацией) как-бы и база останется, времени нет пока, но суть должна быть понятна зеленым выделено сделанное..cmivadwot
bosika, Добил...., формулы не протягивать, а копировать и вставлять, и затык с метрологическими данными (там опечатка- Метрологические хОрактеристики) ...когда диапазон измерения один (прописывает в верхнюю строку, может и не принципиально?). на этом всё.
bosika, Добил...., формулы не протягивать, а копировать и вставлять, и затык с метрологическими данными (там опечатка- Метрологические хОрактеристики) ...когда диапазон измерения один (прописывает в верхнюю строку, может и не принципиально?). на этом всё.cmivadwot
cmivadwot, не совсем так. В шапке написано как и что. Строки то я переносить знаю как, а вот как раскидать по листам по определенным ячейкам еще как не знаю.
cmivadwot, не совсем так. В шапке написано как и что. Строки то я переносить знаю как, а вот как раскидать по листам по определенным ячейкам еще как не знаю.bosika
Начинающий. Много и долго не пинать. Больно однако.