Добрый день.
Во вложении пример.
Есть арткул, есть, например, 2 параметра на каждый артикул.
Небходим макрос, который будет вставлять формулу (именно вставлять формулу, а не сам считать) в новый столбец,
которая вычисляет какую-нибудь функцию (для простоты возьмём сумму данных 2 параметров).
Сложность в том, что на входе всегда разное количество артикулов.
Хотелось бы, чтобы формулы вставлялись в строки, пока столбец A содержит в себе артикул, ну то есть в строках, где столбец A содержит "ИТОГО" или "", формулы уже быть не должно.
Я знаю, что артикулов у меня в таблице, например, не более 200
Из-за нехватки опыта делаю пока так:
Естественно, начиная со строки, в которой A содержит "ИТОГО" в столбце F появляется 0 (и так до окончания ранга, ну то есть до 200ой строки)
Это некрасиво, да и "в лоб". Нули еще ладно, если функция посложней, могут и ошибки типа #Н/Д всплывать. Глаз режет.
Пробовал извращаться, чтобы добиться красоты, в самой формуле, например так:
Красивей конечно внешне стало, но сам факт того, что пришлось "налипить" в простейшую формулу какой-то "фигни",
просто ради того, чтобы в строках не всплывали 0 или ошибки не даёт мне покоя)))
Да и формулы все равно в этих "ненужных" строках есть, просто они дают пустое значение.
Хочется формулу там где она нужна
Наверное нужно использовать цикл какой-нибудь, но в силу нехватки опыта не придумал конструкцию.
Обращаюсь за помощью к более опытным товарищам.
Буду благодарен
Во вложении пример.
Есть арткул, есть, например, 2 параметра на каждый артикул.
Небходим макрос, который будет вставлять формулу (именно вставлять формулу, а не сам считать) в новый столбец,
которая вычисляет какую-нибудь функцию (для простоты возьмём сумму данных 2 параметров).
Сложность в том, что на входе всегда разное количество артикулов.
Хотелось бы, чтобы формулы вставлялись в строки, пока столбец A содержит в себе артикул, ну то есть в строках, где столбец A содержит "ИТОГО" или "", формулы уже быть не должно.
Я знаю, что артикулов у меня в таблице, например, не более 200
Из-за нехватки опыта делаю пока так:
Код |
---|
Sub Пример() Range("F2:F200").FormulaLocal = "=C2+D2" End Sub |
Естественно, начиная со строки, в которой A содержит "ИТОГО" в столбце F появляется 0 (и так до окончания ранга, ну то есть до 200ой строки)
Это некрасиво, да и "в лоб". Нули еще ладно, если функция посложней, могут и ошибки типа #Н/Д всплывать. Глаз режет.
Пробовал извращаться, чтобы добиться красоты, в самой формуле, например так:
Код |
---|
Sub Пример() Range("F2:F200").FormulaLocal = "=ЕСЛИ(И(A2 <> """"; A2 <> ""ИТОГО"");C2+D2;"""")" End Sub |
Красивей конечно внешне стало, но сам факт того, что пришлось "налипить" в простейшую формулу какой-то "фигни",
просто ради того, чтобы в строках не всплывали 0 или ошибки не даёт мне покоя)))
Да и формулы все равно в этих "ненужных" строках есть, просто они дают пустое значение.
Хочется формулу там где она нужна
Наверное нужно использовать цикл какой-нибудь, но в силу нехватки опыта не придумал конструкцию.
Обращаюсь за помощью к более опытным товарищам.
Буду благодарен