![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 | |
Пользователь
Регистрация: 28.01.2011
Сообщений: 29
|
![]()
Дело в том, что этот кусок кода:
Цитата:
![]() |
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 03.08.2011
Сообщений: 74
|
![]()
может так
можно один раз написать sub io() Str = ActiveCell.Row Stol = ActiveCell.Column If Cells(Str, Stol).Value <> 0 Then Cells(Str + 1, Stol).Range("a1").Select Else Range(Cells(Str, Stol), Cells(Str, Stol + 4)).Delete Shift:=xlUp End If end sub и дальше ...... call io ...... получиться короче. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 28.01.2011
Сообщений: 29
|
![]()
тоже вариант, но sub'оф сильно много тоже не хочется
|
![]() |
![]() |
![]() |
#4 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
Всё это можно попробовать сделать без циклов, одной строкой кода.
А если одной строкой не получится - то 4-5 строк хватит. Но, без примера файла, сложно понять, как оптимизировать код. Прикрепите файл - поможем с кодом. |
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 31.12.2010
Сообщений: 2,133
|
![]() Код:
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 30.01.2008
Сообщений: 314
|
![]()
полностью согласен с пред оратором..
можно только чуть ускорить и чуть подправить(по количеству столбцов для удаления): Код:
|
![]() |
![]() |
![]() |
#7 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
а как же 13 раз подряд? и если уже ускорять (а это крайне важно на 13-разовом цикле), то надо уйти от Select
Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
Последний раз редактировалось IgorGO; 02.12.2011 в 11:20. |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 30.01.2008
Сообщений: 314
|
![]()
так селект на выходе - значит это кому-то надо. я б не стал так радикально
![]() |
![]() |
![]() |
![]() |
#9 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
согласен)))
ну, для многих не секркет, что Selrct'ы нужны тем, кто аккуратно переписывает код, полученный с макрорекордера (как это часто делаю я). после next можно добавить строку cells(r,c).select
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Увеличение/уменьшение изображения | nikmay | Мультимедиа в Delphi | 2 | 18.02.2010 00:01 |
Уменьшение размера формул | Fierce | Microsoft Office Word | 2 | 25.05.2009 10:25 |
Уменьшение длины имени | Aндрей | Помощь студентам | 3 | 20.05.2009 16:52 |
уменьшение ширины таблицы | Viteef | HTML и CSS | 5 | 18.02.2009 23:59 |
Увеличение и уменьшение картинок | zzzzz | Мультимедиа в Delphi | 2 | 30.08.2008 20:53 |