Есть таблица, в которой необходимо выявить в колонке E значения, которые больше 30, далее согласно выявленным значениям необходимо скопировать строки в новый лист с сохранением структуры таблицы. При этом колонка F должна перезаписываться на значение 10% и пересчитываться колонка H.
Пытался записать макрос, получилось следующее:
но это совершенно не то, что необходимо.
Во-первых, получилась привязка к конкретным диапазонам. Хорошо бы, если в коде можно было прописать, чтобы он самостоятельно определял границы таблицы.
Во-вторых, я искал значения больше 30 через фильтр,при этом считаю это не лучшим способом, поскольку к таблице применяется фильтр, который необходимо потом убирать.
В третьих, с таким совершено работать нельзя.
Кто, что думает?
Во вложении пример.
Пытался записать макрос, получилось следующее:
Код |
---|
Sub Макрос1() ' ' Макрос1 Макрос ' ' ActiveSheet.Range("$A$11:$H$16").AutoFilter Field:=5, Criteria1:=">=30", _ Operator:=xlAnd Range("A12:H16").Select Selection.Copy Sheets("Лист2").Select Range("A12").Select ActiveSheet.Paste Range("F12").Select Application.CutCopyMode = False ActiveCell.FormulaR1C1 = "10%" Selection.AutoFill Destination:=Range("F12:F14"), Type:=xlFillDefault Range("F12:F14").Select Range("H12").Select ActiveCell.FormulaR1C1 = "=PRODUCT(RC[-7],RC[-2],RC[-3])" Range("H12").Select Selection.AutoFill Destination:=Range("H12:H14"), Type:=xlFillDefault Range("H12:H14").Select End Sub |
Во-первых, получилась привязка к конкретным диапазонам. Хорошо бы, если в коде можно было прописать, чтобы он самостоятельно определял границы таблицы.
Во-вторых, я искал значения больше 30 через фильтр,при этом считаю это не лучшим способом, поскольку к таблице применяется фильтр, который необходимо потом убирать.
В третьих, с таким совершено работать нельзя.
Кто, что думает?
Во вложении пример.