IE2017

В 60 !!! раз сжимаем файл MS EXCEL с картинками (созданный программно из 1С)

Обработки - Универсальные обработки

Все мы когда то сталкивались с экспортом картинок в файл MS EXCEL (или семейство MS принцип один и тот же)
Что интересно , покажу на примере если создать новый лист MS EXCEL и вставить
в него картинку (*.jpg) размером 1,06 мб и сохранить книга столько примерно и будет весить.(это касается последних версий MS EXCEL)
Но если программно в таблицу 1С вставить туже картинку и сохранить в формате *.xls
То новоиспеченное чудо будет весить `24,2 мб. !!! Красиво да.
А если не одна картинка ?
Давайте разберемся почему так происходит.
1. 1С сохраняет (экспортирует свою мxl таблицу по умолчанию в MS EXCEL в формате 05 MS EXCEL)
- хорошо руками открываем файл и сохраняем в нужном нам формате. Смотрим размер файла - 5,6 мб. уже хорошо, но еще нето.
2. В свойствах рисунка есть замечательная функция сжать.... выбираем ее и выбираем "Изменить разрешение для экрана и Интернета"  всего 96 точек на дюйм вместо 200 )))
Сохраняем файл и что мы видим файл весит 0,8 мб....да это прорыв. Но это каждый раз ручками, лень....
Данная обработка не претендует на оригинальность, ОНА ПРОСТО показывает на примере как программно можно добиться успеха в 60 раз ! файл в итоги будет весить 0,4 мб (не без помощи языка VBA)

 

 

Скачать файлы

Наименование Файл Версия Размер
СжатиеEXCEL.ert,Пример.jpg,Шаблон.xls
.zip 332,82Kb
20.02.12
416
.zip 332,82Kb 416 Скачать

См. также

Комментарии
1. Алексей Константинов (alexk-is) 6155 14.05.09 06:01 Сейчас в теме
Прикольно. Только подпись смутила... :)
2. Андрей Скляров (coder1cv8) 3301 14.05.09 09:13 Сейчас в теме
Убери из подписи "гений", это оскорбительное слово в кругах одинэсников )
3. Александр Рытов (Арчибальд) 2660 14.05.09 09:21 Сейчас в теме
4. Юрий Тимофеев (Tatitutu) 3660 14.05.09 10:17 Сейчас в теме
(2) так уж меня назвали давным давно еще в армии служил
ПРОсто Гений (от слова ПРОГ)
5. Василий Демидов (Душелов) 3807 14.05.09 10:24 Сейчас в теме
(4) Лучше Татитуту, поверь.
6. Parazyte (Parazyte) 35 14.05.09 10:27 Сейчас в теме
7. Юрий Тимофеев (Tatitutu) 3660 14.05.09 10:59 Сейчас в теме
8. Сhe Burashka (CheBurator) 14.05.09 12:24 Сейчас в теме
Например: есть у меня прайс для клиентов с картинками - при сохранении штатно весит 37 мег, при пересохранении в экселе (без всяких сжать) - 3 мега...
...автору рекомендую посмотреть "проект Йоксель"
9. Юрий Тимофеев (Tatitutu) 3660 14.05.09 12:50 Сейчас в теме
(8) я об этом писал в описании. При программном просто пересохранение (в данном примере 800 кб вместо 24 мб, а если еще и картинки сжать то 400 кб)
Картинка картинке рознь (если это уже скриншоты с маленьким разрешением,то не очень сильно будет заметно сжатие, а если загрузишь фото с большим разрешение- то эфект интересный будет. Фотография в ориганиле 5 мб можно сохранить с размером 80 кб, а при печати на простом офисном принтере почти не заметно)
10. Юрий Тимофеев (Tatitutu) 3660 14.05.09 12:57 Сейчас в теме
(8) а ты попробуй свой прайс лист подставь в процедуру сжатие и сравни результат. Это обработка сделана как наглядный пример. Рабочая делает во первых групповую обработку офисных файлов (находит файл если есть картинки то сжимает и сохраняет). И также при отправке почты , формирование документации. В программе формируется техническая документация на модель (одновременно на нескольких языках) и в нее вставляется всякая дребедень - рисунки фурнитуры, тех.рисунки, отсканированные картинки, скан перевод, и.т.п. Один комплект бывает до 150 листов (и почти все они с картинками) моделей мнооооооого. Вот для этого и написал.
11. Сhe Burashka (CheBurator) 14.05.09 17:30 Сейчас в теме
(9) Картинка картинке рознь (если это уже скриншоты с маленьким разрешением,то не очень сильно будет заметно сжатие,
- как раз наоборот! у меня в прайсе просто туча маленьких картинок с невысоким разрешением - и с 40 мег простыхм пересохранением ужимается до 3-4 мег. - объяснение смотри в проекте Йоксель
12. Юрий Тимофеев (Tatitutu) 3660 14.05.09 17:45 Сейчас в теме
(11) Я именно про это тебе и ответил.
У тебя уже "ужатые картинки" и эфект мало заметен.

Ситуювина такая. просто пример ничего более....время как обычо не хватает
предзаказ. Сфотографировали порядки 200 фоток (допустим) наш товар на моделях. Скинули на комп с фотоаппарата. Есть папка (300 метров - каждый файл около 1,5) нужно создать буклет для клиентов. Красивый и красочный.А времени нет....ну ты меня понимаешь, да. Обработка с "рыбой" чтобы картинку подогнать правильно, оформление,информация из справочника, картинка из каталога. Альбом в готовом виде - около 8 мб



В проекте Йоксель был - спасибо.
13. Сhe Burashka (CheBurator) 14.05.09 18:21 Сейчас в теме
(12) ничего себе - мало заметен - в 10 раз. Дело не в ужатости картинок, а втом, как они сохраняются конвертором в эксель
14. Юрий Тимофеев (Tatitutu) 3660 15.05.09 07:09 Сейчас в теме
(13) мы с тобой говорим на "Разных языках" - ты пиаришь Йоксель, а я показал стандартные возможности работы MS EXCEL (по статистике мы пользуемся только 10% от его возможностей, как и нашим мозгом (с)) Чем больше вариантов и знаний у тебя есть по решению вопроса, тем больше возможностей.
15. Юрий (novj) 20.05.09 09:29 Сейчас в теме
Да это круто, помню похожую задачу в 8.1 пришлось таки решать через Active Document...
16. Юрий Тимофеев (Tatitutu) 3660 20.05.09 11:41 Сейчас в теме
(15) посмотри код - он легко пойдет и на 8, так как используются возможности самого Офиса , а не 7
17. Юрий (novj) 20.05.09 12:24 Сейчас в теме
Да, я вижу.
просто в свое время мне нужна была поддержка программера, и я выложил
подобную задачу на www.outsources.ru. Видимо мне просто не повезло.
чел с высоким рейтингом задавал столько вопросов что это превратилось в историю " не заебет так замучает".
18. Валерий Корженко (motogon) 20.05.09 19:12 Сейчас в теме
(0) Хм, не знал, автору плюс!
19. Владимир Созанский (vsozansky) 09.07.09 20:34 Сейчас в теме
Очень полезный подход. При формировании прайса в Excel с разными финтами (гиперссылками, группировками и пр.) добавить исполнение макроса, который не забывает конвертнуть все картинки в нужное разрешение и обрезать скрытое - думаю очень полезно.
Огромная благодарность и всяческие респеркты Автору!!!
21. Алексей Павлов (apvl) 13.07.09 10:19 Сейчас в теме
22. (das) Афанасьева Светлана (das) 233 13.07.09 20:22 Сейчас в теме
(8) +
но и эта работа вызывает интерес
23. Александр Цегельников (markers) 186 30.07.09 21:32 Сейчас в теме
Идея интересная! Скоро как раз потребуется! Спасибо!
Tatitutu; +1 Ответить
24. nickVZ (nickVZ) 10 27.09.09 21:49 Сейчас в теме
Как-то не приходилось сохранять отчеты с картинками в формате Ёкселя - предпочитаю PDF для таких целей...
Но идея имеет право быть. А если еще пользуются с пользой - тем более.

Только... хм... совсем не хочется обижать, но... нельзя ли не требовать комментарий? Я понимаю, если обидели "минусом", и уж не дай бог, кратко обозвали нехорошим словом и свинтили: хочется сатисфакции.
Но если просто скачали для "посмотреть"? Ну посмотрели, ну хорошо, но лично не актуально, запомним и отложим... Не вступая в дискуссию. Это плохо?
25. Борис (1B) 16.10.09 18:13 Сейчас в теме
Это очень интересно. Но как можно сделать так, чтобы макрос, который записан в шаблоне можно было реализовать непосредственно в 1С, Тогда это будет идеальный вариант решения сжатия картинок вставляемых в Excel из 1С.
26. Евгений Писарев (pisarevEV) 23.10.09 10:23 Сейчас в теме
прошу автора помочь реализовать все тоже самое, но не через макрос, я непосредственно в теле програмного модуля 1С. К сожалению не силен в VBA...
27. Николай Ронжин (nikolis) 25.11.09 12:16 Сейчас в теме
:!:
Спасибо - очень полезная
Tatitutu; +1 Ответить
28. Юрий Тимофеев (Tatitutu) 3660 25.11.09 12:37 Сейчас в теме
извиняюсь перед (24,25,26) я не видел раньше Ваших комментариев (на почту не приходило)
я услышал Вас - попробую удовлетворить Вашу просьбу.
29. Anri (MegaMouse) 11.12.09 13:05 Сейчас в теме
Все замечательно .
По поводу "АвтоПопрошайки" небольшое пожелание - Ссылку на обработку покорректнее писать : - http://infostart.ru/public/19977/) - без лишних кавычек и пр
30. Юрий Тимофеев (Tatitutu) 3660 11.12.09 13:12 Сейчас в теме
31. Сергей (kpk60) 16.12.09 11:23 Сейчас в теме
Огромная благодарность автору.
32. Сергей Солнышкин (Myti) 91 16.12.09 17:09 Сейчас в теме
Слушай-----а без макросов в документе можно обойтись......
33. Сергей Солнышкин (Myti) 91 16.12.09 17:10 Сейчас в теме
Просто недавно делал такое (25) - запрка та еще была...но результат стоял того
34. Юрий Тимофеев (Tatitutu) 3660 16.12.09 17:11 Сейчас в теме
(32) Не понял вопроса ? если вообще без макросов - то руками можно (часто очень сильно помогает)
что нужно сделать ?
35. Юрий Тимофеев (Tatitutu) 3660 16.12.09 17:14 Сейчас в теме
посмотри две крайние работы, может сам и прикрутишь

http://infostart.ru/public/62751/
http://infostart.ru/public/62648/
36. Сергей Солнышкин (Myti) 91 16.12.09 17:28 Сейчас в теме
(34) - я имел ввиду сжатие картинок средствами 1с через Excel.Application
37. Юрий Тимофеев (Tatitutu) 3660 16.12.09 17:31 Сейчас в теме
(36) в свое время я искал - перерыл кучу документации
но увы...не нашел - ни свойств, ни метотов этого окна сжатия
и "всемирный разум" молчит
38. Андрей (andru_dv) 26.12.09 23:12 Сейчас в теме
Интересная обработка...
Tatitutu; +1 Ответить
39. Александр Алёхин (new_user) 188 06.01.10 15:59 Сейчас в теме
Отличное решение задачи да ещё и на седьмой платфйорме за что отдельный плюс!!!
40. Aika (kerima) 27.01.10 07:30 Сейчас в теме
Обработка очень помогла. Я ее переделала на 81. У нас прайс с большим количеством картинок. Единственно в 2007 офисе намного хуже сжимает картинки чем в 2003-м. Пэтому пришлось 2003 еще ставить. :D
41. Атанас Добрев (logon) 290 11.05.10 23:41 Сейчас в теме
42. Дмитрий Никс (aximo) 668 02.10.12 21:40 Сейчас в теме
Молодец, автоматизировал возможность сжатия
Оставьте свое сообщение