2013-09-19 4 views
0

Перетащите формулу сверху вниз из столбца M2 в столбец M (со ссылкой на колонку L последней строки). Пожалуйста, дайте мне знать самый простой способ написать код в VBA.Перетащите формулу сверху вниз в VBA

+0

Вы имеете в виду выбрать диапазон? – Elias

+0

Что такое «формула»? Vba не перетаскивает, но диапазон («m2», «m» & lastL), где lastL - номер строки, которую вы можете извлечь из ячейки, записав макрос, выберите верхнюю строку и нажмите ctrl + down (или сдвиг , но я уверен, что это ctrl), и он выберет последнюю строку. – TheLaurens

ответ

0

Я думаю, что самый простой способ (я считаю, что вы новичок?) - записать макрос, пока вы перетаскиваете столбец. Затем - посмотрите на «автоматически» написанный код.

Быстрый поиск Google дал мне эту полезную ссылку: How to Record a Macro to Automate Tasks in Excel 2010

+0

перетаскивание не будет выбирать последний, правда? просто до строки, в которую вы перетащили, ctrl + down выберет последнюю строку с данными (перед первым пустым) – TheLaurens

1

Допустим, вы собираетесь конкатенации строку, которая находится в L колонке с какой-либо другой строки .. Ниже макрос обеспечит результат в м столбце

Dim lrow As Integer 
Sub test() 
With ActiveSheet 
lrow = .Range("L600000").End(xlUp).Row 
.Range("M2:M" & lrow).FormulaR1C1 = "=CONCATENATE(RC[-1],""TargerString"")" 
End With 
End Sub 

Испытано

всегда хорошо, чтобы показать свои разработки здесь :)

0

Если вы используете последнюю строку столбец L, и копирование этой формулы по диапазону, лучший способ сделать это в также является самым простым способом - не копируйте, просто установите свойство .Value.

Например, это установит значение всех ячеек в определенном вами диапазоне («yourRange»). Все они будут равны значению ячейки L99.

Dim yourRange As Range 
Set yourRange = Range("M:M") 
yourRange.Value = Range("L99").Value 

Я предположил L99 была последней строке столбца L для этого примера. Если вы не знаете, какая последняя строка в столбце L будет (или если она может измениться при каждом запуске кода), проверьте this SO answer за хороший совет о том, как найти последнюю строку в Excel VBA.

Смежные вопросы