Добрый день! На листе "основа" находится формула где можно менять переменные параметры На листе "результаты" нужно копировать строчку с получившимся результатом. Каждый результат на следующей строчке. Далее по результатам можно проводить аналитику, поэтому нужен весь последовательный перебор значений.
Подскажите, пожалуйста, как ПРАВИЛЬНО вставлять диапазон значений, чтобы на другом листе копировались результаты. Пока я делаю методом перебора: - поменял значение - копировать строчку - открыть лист Результаты - вставить и так каждую итерацию (от 2000 до 8000 вариантов).
Заранее Огромная благодарность всем откликнувшимся.
Добрый день! На листе "основа" находится формула где можно менять переменные параметры На листе "результаты" нужно копировать строчку с получившимся результатом. Каждый результат на следующей строчке. Далее по результатам можно проводить аналитику, поэтому нужен весь последовательный перебор значений.
Подскажите, пожалуйста, как ПРАВИЛЬНО вставлять диапазон значений, чтобы на другом листе копировались результаты. Пока я делаю методом перебора: - поменял значение - копировать строчку - открыть лист Результаты - вставить и так каждую итерацию (от 2000 до 8000 вариантов).
Заранее Огромная благодарность всем откликнувшимся.titov
Вам нужна кнопка добавления и макрос. Примерно вот такой [vba]
Код
Sub Kopir() With Sheets("результаты") n_ = .Cells(.Rows.Count, 1).End(3).Row - 1 ar = .Cells(2, 1).Resize(n_, 4) t_ = "Такие параметры уже есть. Все равно добавить строку?" Set slov = CreateObject("Scripting.Dictionary") With slov For i = 1 To n_ k_ = ar(i, 1) & "_" & ar(i, 2) & "_" & ar(i, 3) & "_" & ar(i, 4) .Item(k_) = i Next i z_ = Cells(2, 1) & "_" & Cells(2, 2) & "_" & Cells(2, 3) & "_" & Cells(2, 4) If .Exists(z_) Then If MsgBox(t_, vbYesNo) <> 6 Then Exit Sub End If End If End With .Cells(n_ + 2, 1).Resize(1, 14) = Cells(2, 1).Resize(1, 14).Value End With End Sub
[/vba]
Вам нужна кнопка добавления и макрос. Примерно вот такой [vba]
Код
Sub Kopir() With Sheets("результаты") n_ = .Cells(.Rows.Count, 1).End(3).Row - 1 ar = .Cells(2, 1).Resize(n_, 4) t_ = "Такие параметры уже есть. Все равно добавить строку?" Set slov = CreateObject("Scripting.Dictionary") With slov For i = 1 To n_ k_ = ar(i, 1) & "_" & ar(i, 2) & "_" & ar(i, 3) & "_" & ar(i, 4) .Item(k_) = i Next i z_ = Cells(2, 1) & "_" & Cells(2, 2) & "_" & Cells(2, 3) & "_" & Cells(2, 4) If .Exists(z_) Then If MsgBox(t_, vbYesNo) <> 6 Then Exit Sub End If End If End With .Cells(n_ + 2, 1).Resize(1, 14) = Cells(2, 1).Resize(1, 14).Value End With End Sub