Страницы: 1
RSS
vba протянуть формулу по строке
 
Добрый день всем!

Помогите, пожалуйста, решить вопрос; есть макрос, которым протягивает формулу по столбцу "АЕ" начиная с 9-й строки и до низа листа:
Код
With Sheets("ААА")
.Range("AE9:AE" & .Cells(Rows.Count, "A").End(xlUp).Row).FormulaLocal = "=СУММ(А1+В1)"
End With
Но проблема в следующем! Мне нужно не до конца листа протянуть формулу, а до 100-й строки или до последней заполненной строки.

Заранее спасибо!
 
.End(xlDown)

FillDown
не нужно оскорблять.
 
Цитата
evgeniy_m написал: vba протянуть формулу по строке
Цитата
evgeniy_m написал: протягивает формулу по столбцу
Неувязочка...
Изменено: JayBhagavan - 26.02.2016 12:19:51

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
Александр Сергеевич написал:
.End(xlDown)

FillDown
а можно конкретнее, пожалуйста?
 
Цитата
JayBhagavan написал:
Неувязочка...
нужно формулу протянуть не до конца листа, а до 100-й строки или последней заполненой
 
Цитата
evgeniy_m написал:
Но проблема в следующем!
А проблемы-то и нет! Макрос вставляет формулу до последней заполненной ячейки в ст. А.
 
расшифровка вашей формулы:

диапазон от АЕ9 до АЕ(номер строки последней заполненной ячейке в колонке А)  нарисовать текст "рролоо"

тоесть величину диапозонау Вас определяет колонка А
не нужно оскорблять.
 
Цитата
Казанский написал:
А проблемы-то и нет! Макрос вставляет формулу до последней заполненной ячейки в ст. А.
так вот не хочет :( тянет формулу до последней строки листа (
 
Код
With Sheets("ААА")
msgbox .Range("AE9:AE" & .Cells(.Rows.Count, "A").End(xlUp).Row).row '.FormulaLocal = "=СУММ(А1+В1)"
End With
Что выдаст?

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Код
If Cells(Rows.Count, "A").End(xlUp).Row < 100 Then .Range("AE9:AE100").FormulaLocal = "=СУММ(А1+В1)"
Else
.Range("AE9:AE" & .Cells(Rows.Count, "A").End(xlUp).Row).FormulaLocal = "=СУММ(А1+В1)"
End If
Изменено: Александр Сергеевич - 26.02.2016 12:42:45
не нужно оскорблять.
 
Для порядка надо перед
Код
Rows.Count
точку добавить
Код
.Rows.Count

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
сработало! Спасибо большое всем!
 
JayBhagavan,
Rows.Count    Это количество строк
.Rows.Count это количество строк в Range
не нужно оскорблять.
 
Цитата
evgeniy_m написал:
сработало! Спасибо большое всем!
странно, я лично не понимаю FormulaLocal = "=СУММ(А1+В1)"
зачем в текстовом виде вводить форму.....
не нужно оскорблять.
 
Цитата
Александр Сергеевич написал:
странно, я лично не понимаю FormulaLocal = "=СУММ(А1+В1)"
зачем в текстовом виде вводить форму.....
вообще без проблем отрабатывает
 
Цитата
evgeniy_m написал:
вообще без проблем отрабатывает
а у меня почему то глюк на это выдает
#ИМЯ?
не нужно оскорблять.
 
Цитата
Александр Сергеевич написал: .Rows.Count это количество строк в Range
Нет. Это кол-во строк в Sheets("ААА")

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
Александр Сергеевич написал: а у меня почему то глюк
A или B русская. Или обе
Согласие есть продукт при полном непротивлении сторон
 
JayBhagavan,
в данном случае да, но часто под  with сидит range
ну отличий нет, , задача выполняется
Изменено: Александр Сергеевич - 26.02.2016 13:00:01
не нужно оскорблять.
 
Цитата
Sanja написал:
A или B русская. Или обе
правильно.

но у автара почему то так работает... ну да ладно, это мелочь
не нужно оскорблять.
 
Цитата
Александр Сергеевич написал: в данном случае да
Я под данный случай и писал.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
Страницы: 1
Читают тему
Наверх