|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.02.2010, 10:05 | #11 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Макрос, удаляющий строки активного листа, в которых есть хотя бы 1 пустая ячейка:
Код:
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 24.02.2010 в 10:07. |
24.02.2010, 10:15 | #12 |
Пользователь
Регистрация: 09.02.2010
Сообщений: 41
|
""А зачем иметь кучу листов, да еще и с кучей макросов? Не проще ли иметь один макрос, который запускается по событию книги Workbook_NewSheet(ByVal Sh As Object). Т.е. при каждом добавлении нового листа.""
Спасибо за ""Workbook_NewSheet(ByVal Sh As Object)"". Если бы я знал, как это приспособить. --------------------------------------------------------------------- ***здесь позволю себе пофилософствовать - я выбрал себе путь обучения через форум, - получаю ответы и пробую хоть что-то понять в структуре макросов. Иногда получается. Написать свои макросы - пока не способен. Поэтому не устану говорить спасибо за ответы. --------------------------------------------------------------------- Много листов определяется количеством файлов, которые необходимо обработать и мне проще не смешивать их. Внутри каждого тысячи строк, например. Тогда я уж точно запутаюсь. Моя логика примитивна - каждый день я автоматически измеряю или получаю или прочее 10-20 файлов (беру с большим запасом). Загоняю их в одну книгу, обрабатываю, сохраняю = каждый непустой день всего один объединённый файл. Насчет того, что много макросов, то их всего: 1. макрос открытия вставки-комбинирования = один; 2. макрос удаления ненужных строк = один; 3. макрос сравнения колонок, диаграмм и прочее -сейчас не принципиально; 4. сохранение-вывод на печать = один -сейчас не принципиально |
24.02.2010, 11:46 | #13 |
Пользователь
Регистрация: 09.02.2010
Сообщений: 41
|
ВОПРОС. Уважаемый SAS888, спасибо за код. Почти разобрался. Еще один мой глупый вопрос: как сделать, чтобы код
----------------------------------------------- Sub DelRows() Application.ScreenUpdating = False: On Error Resume Next ActiveSheet.UsedRange.SpecialCells( xlCellTypeBlanks).EntireRow.Delete End Sub ------------------------------------------------- удалял строку при условии пустой ячейки, но при этом в некоторых других ячейках этой строки есть текст и численные значения (формально любого формата). Указанный Вами код удаляет, но не в моем случае ("текст в ячейке"). Создаю новую книгу, вставляю все, что можно = все работает. Где я ошибаюсь. Может проблема в том, что листы именованы. |
24.02.2010, 11:50 | #14 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Цитата:
Чем шире угол зрения, тем он тупее.
|
|
24.02.2010, 12:17 | #15 |
Пользователь
Регистрация: 09.02.2010
Сообщений: 41
|
Сам не понимаю. Беру свой созданный файл - все работает; беру чужой - ничего. Макрос чувствителен к защите файла (глупость наверное).
Из файла, в котором не получается добиться результата копирую данные и вставляю в новый файл - снова все ОК. Мистика. |
25.02.2010, 08:56 | #16 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Ваша задача немного сложнее, чем кажется. Т.к. Вам требуется
Цитата:
Поэтому, сначала нужно определить последний заполненный столбец, а уже затем проверять на пустоту строку от 1-го до определенного нами столбца. Т.е. без цикла не обойтись. Постаравшись организовать наиболее оптимальный (минимальный) цикл, у меня получился следующий код: Код:
Чем шире угол зрения, тем он тупее.
|
|
26.02.2010, 07:17 | #17 |
Пользователь
Регистрация: 09.02.2010
Сообщений: 41
|
Спасибо за науку и прилагаемый файл.
|
17.12.2018, 22:37 | #18 |
Регистрация: 18.03.2010
Сообщений: 8
|
есть макрос который собирает несколько листов из разных файлов в одну книгу. почему-то иногда собирает все файлы, а иногда только первый.
помогите, пожалуйста, чтобы собирал не только XLS, но и CSV + XLXM etc Код:
Код программы нужно выделять (форматировать) тегами [CODE] [/CODE] (читать FAQ) Модератор Последний раз редактировалось Serge_Bliznykov; 18.12.2018 в 07:45. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Макрос постоянно обрабатывает события. При открытии другой книги макрос обрывается. | Ples | Microsoft Office Excel | 8 | 17.12.2016 18:15 |
Измение гиперссылок на листы книги при переименовании файла | Aswerd | Microsoft Office Excel | 0 | 18.02.2010 01:26 |
excel+vba странности взаимодействия при сохранении книги без макросов | alvazor | Microsoft Office Excel | 7 | 06.07.2009 17:22 |
Выбор файлов для импорта. | Sorro | Microsoft Office Excel | 8 | 06.05.2009 12:16 |
При закрытии книги, удаляются листы | Romuald | Microsoft Office Excel | 3 | 20.01.2009 21:34 |