Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удаление всех пустых строк в ... - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удаление всех пустых строк в ... (Макросы/Sub)
Удаление всех пустых строк в ...
Asshaker Дата: Пятница, 27.11.2015, 16:16 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте уважаемые. И так интрига в названии темы удалась, раз вы здесь.
Мне кажется решение моего вопроса банальное. Но мой мозг отказывается выдавать решения ибо они закончились.
Появилась задача удалить пустые строки из таблицы, нашел следующее решение.
http://www.excelworld.ru/forum/3-48-1
Автору спасибо большое!!!
Но вот следующий вызов, поверг меня в шок.
Есть книга. 1к листов. в книге таблица на 100к строк. Если встать на последнюю не пустую строку и нажать ctrl+shift+стрелка вниз. То мы улетаем на овер миллион строк. Понятно, что удалив их мы уменьшаем размер файла. Но вот засада листов то 1000 штук. И каждое действие делается очень долго :)
Так вот вопрос, есть ли макрос удаляющий пустые строки на всех листах книги?
Или же как сделать перечисление листов книги, для применения макроса DeleteEmptyRows на каждом листе.
Заранее благодарен.
 
Ответить
СообщениеЗдравствуйте уважаемые. И так интрига в названии темы удалась, раз вы здесь.
Мне кажется решение моего вопроса банальное. Но мой мозг отказывается выдавать решения ибо они закончились.
Появилась задача удалить пустые строки из таблицы, нашел следующее решение.
http://www.excelworld.ru/forum/3-48-1
Автору спасибо большое!!!
Но вот следующий вызов, поверг меня в шок.
Есть книга. 1к листов. в книге таблица на 100к строк. Если встать на последнюю не пустую строку и нажать ctrl+shift+стрелка вниз. То мы улетаем на овер миллион строк. Понятно, что удалив их мы уменьшаем размер файла. Но вот засада листов то 1000 штук. И каждое действие делается очень долго :)
Так вот вопрос, есть ли макрос удаляющий пустые строки на всех листах книги?
Или же как сделать перечисление листов книги, для применения макроса DeleteEmptyRows на каждом листе.
Заранее благодарен.

Автор - Asshaker
Дата добавления - 27.11.2015 в 16:16
Roman777 Дата: Пятница, 27.11.2015, 16:45 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
Asshaker, В вашем случае, думаю, будет разумнее делать не удаление строк, а их сортировку. Правда, это если Вам потом удастся получить нужный вам порядок строк...(или порядок не принципиален))


Много чего не знаю!!!!
 
Ответить
СообщениеAsshaker, В вашем случае, думаю, будет разумнее делать не удаление строк, а их сортировку. Правда, это если Вам потом удастся получить нужный вам порядок строк...(или порядок не принципиален))

Автор - Roman777
Дата добавления - 27.11.2015 в 16:45
Asshaker Дата: Понедельник, 30.11.2015, 08:40 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Asshaker, В вашем случае, думаю, будет разумнее делать не удаление строк, а их сортировку. Правда, это если Вам потом удастся получить нужный вам порядок строк...(или порядок не принципиален))

В моем случае, строки ниже таблицы заполнены нулями или еще чем то. Книги весят по 500 mb. После действий "встать на последнюю не пустую строку и нажать ctrl+shift+стрелка вниз. пкм уладить" книги уменьшаются на 10-20 mb.
Одну из книг я ручками лопатил, с 500mb уменьшилась до 700kb. Но есть книги и по 2 и по 5 гигов. Данных в них не много, но они почему то раздуты. Вот для комфортной работы приходится "чистить"
М.б. есть иное решение проблемы? Подскажите, пожалуйста!
 
Ответить
Сообщение
Asshaker, В вашем случае, думаю, будет разумнее делать не удаление строк, а их сортировку. Правда, это если Вам потом удастся получить нужный вам порядок строк...(или порядок не принципиален))

В моем случае, строки ниже таблицы заполнены нулями или еще чем то. Книги весят по 500 mb. После действий "встать на последнюю не пустую строку и нажать ctrl+shift+стрелка вниз. пкм уладить" книги уменьшаются на 10-20 mb.
Одну из книг я ручками лопатил, с 500mb уменьшилась до 700kb. Но есть книги и по 2 и по 5 гигов. Данных в них не много, но они почему то раздуты. Вот для комфортной работы приходится "чистить"
М.б. есть иное решение проблемы? Подскажите, пожалуйста!

Автор - Asshaker
Дата добавления - 30.11.2015 в 08:40
nilem Дата: Понедельник, 30.11.2015, 09:37 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Asshaker, привет
попробуйте запустить вот этот код
[vba]
Код
Sub ttt()
Dim wsh As Worksheet
For Each wsh In ThisWorkbook.Sheets
    wsh.Activate
    ActiveSheet.UsedRange
Next wsh
End Sub
[/vba]
, а потом сохраните книгу и посмотрите размер. Иногда помогает.


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеAsshaker, привет
попробуйте запустить вот этот код
[vba]
Код
Sub ttt()
Dim wsh As Worksheet
For Each wsh In ThisWorkbook.Sheets
    wsh.Activate
    ActiveSheet.UsedRange
Next wsh
End Sub
[/vba]
, а потом сохраните книгу и посмотрите размер. Иногда помогает.

Автор - nilem
Дата добавления - 30.11.2015 в 09:37
Asshaker Дата: Понедельник, 30.11.2015, 09:51 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
цитата удалена
Не помогло.
А вот макрос из этой темы http://www.excelworld.ru/forum/3-57-1
справился на ура! 96mb превратились 127kb
[moder]Не надо цитировать пост целиком. Это нарушение Правил форума[/moder]
Извините. Учту.

З.Ы. Макрос скопировал таблицу на каждый лист :) поиски решения продолжаются!


Сообщение отредактировал Asshaker - Понедельник, 30.11.2015, 09:55
 
Ответить
Сообщениецитата удалена
Не помогло.
А вот макрос из этой темы http://www.excelworld.ru/forum/3-57-1
справился на ура! 96mb превратились 127kb
[moder]Не надо цитировать пост целиком. Это нарушение Правил форума[/moder]
Извините. Учту.

З.Ы. Макрос скопировал таблицу на каждый лист :) поиски решения продолжаются!

Автор - Asshaker
Дата добавления - 30.11.2015 в 09:51
Roman777 Дата: Понедельник, 30.11.2015, 10:24 | Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
не знаю, рабочий ли был макрос nilem, но часто, из-за "ThisWorkbook" происходят ошибки, когда кидаете макрос в личную книгу макросов.. потому что он определяет ThisWorkbook как Personal.xlsb.
Поэтому я бы использовал всё-таки "ActiveWorkbook" вместо "ThisWorkbook":
[vba]
Код
Sub ttt()
Dim wsh As Worksheet
For Each wsh In ActiveWorkbook.sheets
wsh.Activate
ActiveSheet.UsedRange
Next wsh
End Sub
[/vba]


Много чего не знаю!!!!

Сообщение отредактировал Roman777 - Понедельник, 30.11.2015, 10:24
 
Ответить
Сообщениене знаю, рабочий ли был макрос nilem, но часто, из-за "ThisWorkbook" происходят ошибки, когда кидаете макрос в личную книгу макросов.. потому что он определяет ThisWorkbook как Personal.xlsb.
Поэтому я бы использовал всё-таки "ActiveWorkbook" вместо "ThisWorkbook":
[vba]
Код
Sub ttt()
Dim wsh As Worksheet
For Each wsh In ActiveWorkbook.sheets
wsh.Activate
ActiveSheet.UsedRange
Next wsh
End Sub
[/vba]

Автор - Roman777
Дата добавления - 30.11.2015 в 10:24
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удаление всех пустых строк в ... (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!