|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.03.2011, 08:34 | #1 |
Новичок
Джуниор
Регистрация: 18.03.2011
Сообщений: 2
|
Разбить большой файл на более мелкие
Всем добрый день!
Появилась необходимость разбивать большие файлы на более мелкие. Нужен какой-то макрос. Сам додуматься не могу. Поясню конкретнее: Есть файл, пусть его название Файл №1.xls Его размер около 100 Мб. В нем есть сколько-то листов, точное количество не известно, так как файл редактируется время от времени. Нужно разбить файл на несколько, чтоб каждый весил 30 Мб (не обязательно точно, но примерно). Я примерно представляю это так что открывается Файл №1.xls, создается новый документ эксель, встаем на первый лист Файл №1 и копируем его в новый документ с таким же названием, смотрим, если размер получившегося файла меньше 30 Мб, то копируем второй лист из Файл №1 и снова проверяем размер.... Если новый документ становится больше 30 мб, то сохраняем его под именем Файл №1_1.xls. Далее вновь создаем новый документ и продолжаем копировать листы из Файл №1, постоянно проверяя размер получающегося файла, и сохраняя его под именами Файл №1_2.xls, Файл №1_3.xls, Файл №1_4.xls Сам только начал осваивать макросы, а поставили задачу. Помогите пожалуйста! Заранее спасибо |
18.03.2011, 09:14 | #2 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Насчёт размера - вполне возможно, что этот размер создают не те данные, которые Вы видите, и его значительно можно уменьшить, не разбивая файл.
Кроме того, сохранив его как xlsx (если версия позволяет) Вы тоже значительно уменьшите размер. А так как Вы хотите - за полчаса уже давно можно было сделать вручную. Один файл разложить всего на 3 части - зачем макрос?... Если кто и напишет - вряд ли получится именно такой макрос, ибо так возни много. Размер можно анализировать только после сохранения... Если есть формулы, связанные с другими листами - это тоже гемор...
webmoney: E265281470651 Z422237915069 R418926282008
|
18.03.2011, 09:42 | #3 |
Новичок
Джуниор
Регистрация: 18.03.2011
Сообщений: 2
|
Никаких формул в файле нет, только таблицы. Какие данные и что они создают меня вообще не касается, создаю не я. Мне приходит готовый файл.
Сохранить в xlsx не стоит, у тех кто потом будет работать с файлами возможно не поддерживает. Вручную вообще не вариант. представьте файл где пусть даже около 50 листов, и размер его не обязательно 100МБ, я для примера сказал, он может быть и 60 и 360... И таких файлов несколько. Вручную у меня пол дня уйдет. Гораздо проще автоматизировать. Может кто хотя бы алгоритм нарисует. |
18.03.2011, 12:22 | #4 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
Ну вот Вам файл с общим алгоритмом. Если надо - можно доработать.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
18.03.2011, 13:06 | #5 |
Участник клуба
Регистрация: 12.08.2010
Сообщений: 1,079
|
чем гадать, какой лист в какой книге
поделила бы , благо листов 50-60 -книга "лист12.xls" c листом лист12
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разбить файл. | ben95 | Помощь студентам | 3 | 08.01.2010 12:18 |
отдавать большой файл с фтп | TaTT DoGG | PHP | 5 | 03.07.2009 10:34 |
Разбить exe файл | Alex Cones | Мультимедиа в Delphi | 9 | 18.04.2009 21:18 |
ActiveX не хочет читать большой файл | Miklek | Общие вопросы Delphi | 0 | 02.04.2009 11:55 |
Разбить файл на 4 части | borzoni | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 31.05.2008 10:51 |