![]() |
![]() |
![]() |
|
Работа с картинками в Excel | ☑ | ||
---|---|---|---|---|
0
Lazy Cat
20.10.10
✎
13:03
|
Ситуация такая: есть файл *.xlsx, сформированный из 1С 82 (через ТабДок.Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLSX), т.к. шаблон сложный и программно его не опишешь в Excel) В файле есть картинки, которые были в шаблоне, всего 2 типа картинок. Необходимо, чтобы они имели разный размер - 1 типа 1 размер, 2-соответственно другой.
Как сделать одного размера, я сообразил: Эксель = Новый COMОбъект("Excel.Application"); Книга = Эксель.WorkBooks.Open(ИмяФайла); Лист = Книга.WorkSheets(1); Лист.Pictures.ShapeRange.LockAspectRatio = false; Лист.Pictures.ShapeRange.ScaleWidth(2, 0, 0); Лист.Pictures.ShapeRange.ScaleHeight(7, false, 0); Кто подскажет, как можно произвольно менять размер картинок? НИкак не могу сообразить.. |
|||
1
Lazy Cat
20.10.10
✎
18:29
|
Попробую апнуть..
|
|||
2
dragonIMV
20.10.10
✎
18:35
|
а нельзя в макете в 1С сразу вставить картинки и нужный размер задать?
|
|||
3
dragonIMV
20.10.10
✎
18:35
|
(2) мы так с печатью и подписью делали...
|
|||
4
Lazy Cat
20.10.10
✎
18:37
|
Проблема в том, что Excel, когда в него выгружаешь макет с картинкой, искажает размер картинки непонятно по какому принципу. Т.е. в 1С все выглядит и печатается замечательно, а после сохранения в Excel получается лажа. ПОчему так - непонятно. Поэтому я подключаюсь к Excel и ручками устанавливаю размеры картинок.
|
|||
5
dragonIMV
20.10.10
✎
18:38
|
(4) о_О не замечал такой проблемы, но мы сохраняем в формате xls, а не xlsx
|
|||
6
Lazy Cat
20.10.10
✎
18:39
|
В xls вообще с картинками сохранять не хочет, выдает ошибку потом при открытии файла
|
|||
7
dragonIMV
20.10.10
✎
18:40
|
что за платформа и конфигурация?
а то яв 8.2 это делал и никаких проблем, в 8.1 не помню уже, давно это было |
|||
8
1C-Nick
20.10.10
✎
18:43
|
(0) перебрать Лист.Pictures и устанавливать для каждого разный размер по идее
|
|||
9
Lazy Cat
20.10.10
✎
18:45
|
Блин, точно. В xls не искажает, в xlsx искажает. Я пробовал похоже не тот формат :) Спасибо за подсказку!!!! Я 2 дня с ним мучаюсь уже. (8) - не знаю как это сделать, информации толком нигде не нашел
|
|||
10
dragonIMV
20.10.10
✎
18:48
|
(9) до чего приятно, когда совет кому то помогает)))
|
|||
11
1C-Nick
20.10.10
✎
18:48
|
эх, а я только цикл набросал
For Each pic In Лист1.Shapes pic.ScaleHeight 1.75, msoTrue pic.ScaleWidth 1.75, msoTrue Next |
|||
12
Lazy Cat
20.10.10
✎
18:52
|
Сенкс, я себе скопировал, чувствую, еще пригодится :) А то с excel у меня постоянно проблемы
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |