Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2019, 12:42   #1
amadeus017
Форумчанин
 
Регистрация: 28.05.2014
Сообщений: 158
По умолчанию Вставить формулу до последней строки значений

Добрый день, уважаемые форумчане!
Обращаюсь к вам с просьбой, упростить макрос, который привязан к "смайлу".
Работать он должен следующим образом:
1 - На листе "$" копирует значение строк с ячейки "C4" и вниз до последней строки (количество строк может быть до 30 тыс., по разному) и вставляет их в соседний столбик "B4"
2 - На листе "$" начиная с ячейки "C6" и до 30 000, вставляет формулу "ВПР", но в идеале, хотелось бы чтобы до последней строки вставала формула, а не до 30 000, так как комп начинает жутко зависать.
3 - На листе "$" в 4-й строки, начиная с ячейки "D4" и до "S4", вставляет номера по порядку

Хотелось бы устранить проблему зависания ПК, а это как я понимаю, из-за того, что в графе "C" проставляется формула до строки 30 000
Вложения
Тип файла: rar !!!_Продажа.rar (45.0 Кб, 2 просмотров)
amadeus017 вне форума Ответить с цитированием
Старый 26.12.2019, 13:33   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Sub Очистить()
  Range("C4:CD10000").ClearContents
End Sub


Sub SPR()
  Range([c4], [c4].End(xlDown)).Copy [B4]
  Range([c6], [c6].End(xlDown)).FormulaR1C1 = "=VLOOKUP(RC[-1],Spr!C2:C16,2,0)"
  Range("D4").Resize(1, 16).FormulaR1C1 = "=column()-3"
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 26.12.2019, 13:45   #3
amadeus017
Форумчанин
 
Регистрация: 28.05.2014
Сообщений: 158
По умолчанию

Sub SPR()
Range([c4], [c4].End(xlDown)).Copy [B4]
Range([c6], [c6].End(xlDown)).FormulaR1C1 = "=VLOOKUP(RC[-1],Spr!C2:C16,2,0)"
Range("D4").Resize(1, 16).FormulaR1C1 = "=column()-3"
End Sub[/CODE][/QUOTE]


Спасибо!
Буду пробовать
amadeus017 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копировать формулу до последней строки amadeus017 Microsoft Office Excel 2 09.07.2018 10:06
Как доработать формулу до последней непустой яч-и? maseur Microsoft Office Excel 5 21.11.2012 22:28
Как вставить формулу? Maryver Microsoft Office Excel 5 08.03.2011 12:31
как вставить формулу в vba Ilya_L Microsoft Office Excel 6 18.06.2010 09:10
Вставить значение ячейки в формулу jungo Microsoft Office Excel 2 12.08.2008 15:32