Все мы когда то сталкивались с экспортом картинок в файл 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)
Что интересно , покажу на примере если создать новый лист 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)
Прикольно. Только подпись смутила… 🙂
Убери из подписи «гений», это оскорбительное слово в кругах одинэсников )
(1,2) Тсссссс….
(2) так уж меня назвали давным давно еще в армии служил
ПРОсто Гений (от слова ПРОГ)
(4) Лучше Татитуту, поверь.
или сократи до ПРОГ 🙂
Изменил)))
Например: есть у меня прайс для клиентов с картинками — при сохранении штатно весит 37 мег, при пересохранении в экселе (без всяких сжать) — 3 мега…
…автору рекомендую посмотреть «проект Йоксель»
(8) я об этом писал в описании. При программном просто пересохранение (в данном примере 800 кб вместо 24 мб, а если еще и картинки сжать то 400 кб)
Картинка картинке рознь (если это уже скриншоты с маленьким разрешением,то не очень сильно будет заметно сжатие, а если загрузишь фото с большим разрешение- то эфект интересный будет. Фотография в ориганиле 5 мб можно сохранить с размером 80 кб, а при печати на простом офисном принтере почти не заметно)
(8) а ты попробуй свой прайс лист подставь в процедуру сжатие и сравни результат. Это обработка сделана как наглядный пример. Рабочая делает во первых групповую обработку офисных файлов (находит файл если есть картинки то сжимает и сохраняет). И также при отправке почты , формирование документации. В программе формируется техническая документация на модель (одновременно на нескольких языках) и в нее вставляется всякая дребедень — рисунки фурнитуры, тех.рисунки, отсканированные картинки, скан перевод, и.т.п. Один комплект бывает до 150 листов (и почти все они с картинками) моделей мнооооооого. Вот для этого и написал.
(9) Картинка картинке рознь (если это уже скриншоты с маленьким разрешением,то не очень сильно будет заметно сжатие,
— как раз наоборот! у меня в прайсе просто туча маленьких картинок с невысоким разрешением — и с 40 мег простыхм пересохранением ужимается до 3-4 мег. — объяснение смотри в проекте Йоксель
(11) Я именно про это тебе и ответил.
У тебя уже «ужатые картинки» и эфект мало заметен.
Ситуювина такая. просто пример ничего более….время как обычо не хватает
предзаказ. Сфотографировали порядки 200 фоток (допустим) наш товар на моделях. Скинули на комп с фотоаппарата. Есть папка (300 метров — каждый файл около 1,5) нужно создать буклет для клиентов. Красивый и красочный.А времени нет….ну ты меня понимаешь, да. Обработка с «рыбой» чтобы картинку подогнать правильно, оформление,информация из справочника, картинка из каталога. Альбом в готовом виде — около 8 мб
В проекте Йоксель был — спасибо.
(12) ничего себе — мало заметен — в 10 раз. Дело не в ужатости картинок, а втом, как они сохраняются конвертором в эксель
(13) мы с тобой говорим на «Разных языках» — ты пиаришь Йоксель, а я показал стандартные возможности работы MS EXCEL (по статистике мы пользуемся только 10% от его возможностей, как и нашим мозгом (с)) Чем больше вариантов и знаний у тебя есть по решению вопроса, тем больше возможностей.
Да это круто, помню похожую задачу в 8.1 пришлось таки решать через Active Document…
(15) посмотри код — он легко пойдет и на 8, так как используются возможности самого Офиса , а не 7
Да, я вижу.
просто в свое время мне нужна была поддержка программера, и я выложил
подобную задачу на http://www.outsources.ru. Видимо мне просто не повезло.
чел с высоким рейтингом задавал столько вопросов что это превратилось в историю » не заебет так замучает».
(0) Хм, не знал, автору плюс!
Очень полезный подход. При формировании прайса в Excel с разными финтами (гиперссылками, группировками и пр.) добавить исполнение макроса, который не забывает конвертнуть все картинки в нужное разрешение и обрезать скрытое — думаю очень полезно.
Огромная благодарность и всяческие респеркты Автору!!!
+1
(8) +
но и эта работа вызывает интерес
Идея интересная! Скоро как раз потребуется! Спасибо!
Как-то не приходилось сохранять отчеты с картинками в формате Ёкселя — предпочитаю PDF для таких целей…
Но идея имеет право быть. А если еще пользуются с пользой — тем более.
Только… хм… совсем не хочется обижать, но… нельзя ли не требовать комментарий? Я понимаю, если обидели «минусом», и уж не дай бог, кратко обозвали нехорошим словом и свинтили: хочется сатисфакции.
Но если просто скачали для «посмотреть»? Ну посмотрели, ну хорошо, но лично не актуально, запомним и отложим… Не вступая в дискуссию. Это плохо?
Это очень интересно. Но как можно сделать так, чтобы макрос, который записан в шаблоне можно было реализовать непосредственно в 1С, Тогда это будет идеальный вариант решения сжатия картинок вставляемых в Excel из 1С.
прошу автора помочь реализовать все тоже самое, но не через макрос, я непосредственно в теле програмного модуля 1С. К сожалению не силен в VBA…
❗
Спасибо — очень полезная
извиняюсь перед (24,25,26) я не видел раньше Ваших комментариев (на почту не приходило)
я услышал Вас — попробую удовлетворить Вашу просьбу.
Все замечательно .
http://infostart.ru/public/19977/) — без лишних кавычек и пр
По поводу «АвтоПопрошайки» небольшое пожелание — Ссылку на обработку покорректнее писать : —
(29) Спасибо , учту 😀
Огромная благодарность автору.
Слушай——а без макросов в документе можно обойтись……
Просто недавно делал такое (25) — запрка та еще была…но результат стоял того
(32) Не понял вопроса ? если вообще без макросов — то руками можно (часто очень сильно помогает)
что нужно сделать ?
посмотри две крайние работы, может сам и прикрутишь
(34) — я имел ввиду сжатие картинок средствами 1с через Excel.Application
(36) в свое время я искал — перерыл кучу документации
но увы…не нашел — ни свойств, ни метотов этого окна сжатия
и «всемирный разум» молчит
Интересная обработка…
Отличное решение задачи да ещё и на седьмой платфйорме за что отдельный плюс!!!
Обработка очень помогла. Я ее переделала на 81. У нас прайс с большим количеством картинок. Единственно в 2007 офисе намного хуже сжимает картинки чем в 2003-м. Пэтому пришлось 2003 еще ставить. 😀
Спасибо 🙂
Молодец, автоматизировал возможность сжатия
Скачал файл, но в архиве только обработка СжатиеEXCEL.ert. Функционал по сжатию с изменением разрешения картинок с 200 на 96 точек прописан в файле Шаблон.xls средствами Excel. Из 1С обработки вызывается макрос. Файла Шаблон.xls в архиве нет. Как-то ни за что списался 1 стартмани.
(43) Александр
все написано в описании
«Все мы когда то сталкивались с экспортом картинок в файл 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)»
есть обработка. она с открытым кодом полностью рабочая (ей более 8 лет !!!)
все там есть и как нужно работает !
а вот за такие слова «Файла Шаблон.xls в архиве нет. Как-то ни за что списался 1 стартмани.» Жду извинения
Да, действительно, все файлы в архиве есть. Приношу извинения.
Проблема была на моей стороне.
Скачивал файл на Windows 2008 Server R2, просматривал встроенным средством работы со сжатыми zip папками.
При этом в архиве виден только файл обработки. По команде «Извлечь все…» распаковывается только обработка.
Остальные файлы видны только если открыть архив через 7zip или WinRar.
Могу дать удаленный доступ — сами посмотрите.
Жаль, что не разобрались сразу, когда я писал в личку.
(45) Александр ! Все нормально. Я тогда давным давно — специально сделал файлы скрытыми.
Мы же программисты ! Чтобы жизнь скучной не была
(46) 🙂 🙂 🙂