![]() |
![]() |
![]() |
|
вытащить картинку из файла excel | ☑ | ||
---|---|---|---|---|
0
viktorovichvadim
13.11.08
✎
15:47
|
Нужны методы excelя, позволяющие на текущем листе добраться до картинки, на нем расположенной, и скопировать ее в некоторый файл.
|
|||
1
Fragster
гуру
13.11.08
✎
15:47
|
Согласен, эти методы очень нужны
|
|||
2
dk
13.11.08
✎
15:50
|
макросы в ехеле запускал?
|
|||
3
vde69
13.11.08
✎
15:50
|
работа с листами тут http://infostart.ru/profile/6369/blogs/718/ дальше юзаешь колекции самого листа
|
|||
4
dk
13.11.08
✎
15:51
|
картинки вроде в коллекции shapes хранятся
|
|||
5
vde69
13.11.08
✎
15:51
|
(0) у екселя в принцепе нету текущего листа, точнее не всегда он есть :)
|
|||
6
viktorovichvadim
13.11.08
✎
15:54
|
Мне собственно то и нужно имя свойства, содержащего коллекцию картинок текущего листа (ну не силен я в аглицком - юзать справку)
|
|||
7
Ужас бухгалтера
13.11.08
✎
15:54
|
(0) Открыть Йокселем и использовать метод ИзвлечьКартинки:
http://yoksel.net.ru/Ob%27ektyVstroennogoJazyka/TablichnyjjDokument/Izvlech%27Kartinki Для преобразования картинки в другой формат можно взять объект "Йоксель.Картинка". |
|||
8
dk
13.11.08
✎
15:57
|
хотя щас сунулся в ехель - нифига не смог картинку сохранить в файл :(
|
|||
9
vde69
13.11.08
✎
15:59
|
(8) ее от туда через контейнер (клиборд) тащить надо,
|
|||
10
dk
13.11.08
✎
16:00
|
если только сохранить как вэб страницу и выбрать там картинки
|
|||
11
vde69
13.11.08
✎
16:00
|
(9) ибо формат там бмп и кривой
|
|||
12
viktorovichvadim
13.11.08
✎
16:02
|
Эксель = ПолучитьCOMОбъект("", "Excel.Application");
Книга = Эксель.WorkBooks.Open(ТекФайл); ТекЛист = Книга.WorkSheets("Вопрос" + A); а вот как дальше добраться до картинки, если она есть? Например, Картинка ТекЛист.Shapes(1) - неправильный вариант |
|||
13
Ёпрст
гуру
13.11.08
✎
16:03
|
||||
14
Ужас бухгалтера
13.11.08
✎
16:06
|
(13) Автору ответил уже (в новых версиях Йокселя скрытые строки уже не печатаются). Хм, а что правда тему удалили?...
|
|||
15
Ёпрст
гуру
13.11.08
✎
16:07
|
(14) Ага, почему, не ясно... Хотя она и с корректным топиком была..
|
|||
16
Ёпрст
гуру
13.11.08
✎
16:08
|
+14 Мот по условию? Печатать али нет :)
|
|||
17
viktorovichvadim
13.11.08
✎
16:08
|
помогите вытащить картинку, люди... проверил, коллекция shapes - совсем не то
|
|||
18
Ужас бухгалтера
13.11.08
✎
16:11
|
(16) Есть настройка печати - выводить или нет. В демо-конфе есть пример.
|
|||
19
dk
13.11.08
✎
16:14
|
(17) скопировать в какой файл? или все таки сохранить в файл?
если сохранить, то уже сказали что напрямую ехель не позволяет. можно 1. йоксель 2. буфер обмена 3. html |
|||
20
Ужас бухгалтера
13.11.08
✎
16:15
|
(15) Модератору написал, посмотрим, что ответит.
|
|||
21
viktorovichvadim
13.11.08
✎
16:17
|
товаришчи, я прогаммно из 1с хочу зайти в excel-файлик, пройти по всем листам, и если там есть картинка, сохранить ее (или скопировать) в другой файл. вот такая задачка...
|
|||
22
dk
13.11.08
✎
16:18
|
в другой excel файл?
|
|||
23
viktorovichvadim
13.11.08
✎
16:23
|
в файл .bmp
|
|||
24
dk
13.11.08
✎
16:26
|
(23) см. (19)
|
|||
25
viktorovichvadim
13.11.08
✎
16:39
|
Попытка
Картинка = ТекЛист.Pictures(1); Сообщить("на листе " + A + "есть, блин, картинка"); Исключение КонецПопытки; Вот так я все-таки добрался до нее... Как теперь в файл закинуть? |
|||
26
YHVVH
13.11.08
✎
16:41
|
(15) Черт удалил :-(
|
|||
27
viktorovichvadim
13.11.08
✎
16:54
|
Подскажите, как сохранить картинку в файл формата "bmp"
|
|||
28
vde69
13.11.08
✎
17:00
|
With Application.CommandBars.FindControl(msoControlButton)
'Get the button image and mask of this CommandBarButton object. Set picPicture = .Picture Set picMask = .Mask End With 'Save the button image and mask in a folder. stdole.SavePicture picPicture, "c:\image.bmp" stdole.SavePicture picMask, "c:\mask.bmp" ну для 1с видимо синтаксис будет Картинка.SavePicture(Картинка, "c:\image.bmp") |
|||
29
vde69
13.11.08
✎
17:01
|
(28) но я еще раньше говорил, что типа тут кривость есть, первый параметр - "маска"
|
|||
30
dk
13.11.08
✎
17:10
|
дык это для картинок на кнопках?
|
|||
31
vde69
13.11.08
✎
17:13
|
(30) у меня другого не ищет :) вероятно одинаковый подход.
Вообще в екселе нету доступа к обьекту "конва", от этого все траблы... (может у вб формы есть - не смотрел, но у листа нету) |
|||
32
viktorovichvadim
13.11.08
✎
17:18
|
Пока вот что выдает...
Метод объекта не обнаружен (SavePicture) Картинка.SavePicture("C:\ris", "bmp"); Как я понимаю, нет такого метода. Мда... Есть еще варианты? ps. имеется ввиду не картинка на кнопке, а просто картинка, как например в файликах xls с тестами профессионал 1с |
|||
33
viktorovichvadim
13.11.08
✎
17:37
|
помогите кто-нибудь...
|
|||
34
viktorovichvadim
13.11.08
✎
17:50
|
спасибо за понимание, товаришчи...
|
|||
35
Ковычки
13.11.08
✎
18:31
|
а чо тут помогать, все идет легко и не пренужденно
|
|||
36
sttt
13.11.08
✎
22:11
|
Похоже вопросы на профессионала похакать желает :-)
|
|||
37
sttt
13.11.08
✎
22:13
|
Макрос запусти и если сможешь сохранить картинку, посмотришь код как эксель это делает
|
|||
38
viktorovichvadim
14.11.08
✎
08:59
|
о каком макросе речь? че то непонятно...
|
|||
39
viktorovichvadim
14.11.08
✎
10:18
|
Получается выполнить Картинка.Copy()
Происходит копирование текущей картинки в буфер обмена. Подскажите, как программно из 1с взять ее из буфера и вставить в файл с расширением .bmp |
|||
40
Torquader Darigha
14.11.08
✎
10:48
|
В Excel-е картинок нет, есть встроенные объекты, которые хранят данные самого объекта и его WMF (Windows Metafile) представление. Чтобы извлечь картинку из файла проще ещё скопировать в Clipboard и потом вставить в то, что умеет её сохранять.
Видимо, MSPAINT и его "дрессирование" через WScript.Shell SendKeys. |
|||
41
Ужас бухгалтера
14.11.08
✎
10:53
|
(40) Есть там картинки, есть. Это я тебе совершенно точно говорю.
|
|||
42
sttt
14.11.08
✎
15:20
|
Никак, нужно писать самому компоненту или программку ищи из командной строки чтобы буфер сохраняла в файлы
|
|||
43
sttt
14.11.08
✎
15:28
|
Set WshExtra = CreateObject("WshExtra.Clipboard")
WshExtra.Copy("Запись в буфер обмена") MsgBox WshExtra.Paste() http://www.script-coding.info/WshExtra.zip попробуй может прокатит |
|||
44
sttt
14.11.08
✎
15:29
|
(43) и ADOStream
|
|||
45
YHVVH
14.11.08
✎
15:31
|
а новую версию когда можно скачать?
|
|||
47
sttt
17.11.08
✎
14:24
|
(0) Если еще актуально то вот:
c:\nircmd.exe clipboard saveimage "c:\temp\clip01.png" http://www.nirsoft.net/utils/nircmd.zip |
|||
48
sttl
18.11.08
✎
03:06
|
(67): "приЙдется"....
Пипец... Всё! На этом твоё мега-внедрение закончено. Именно поэтому, увидев в Коммерческом предложении слово "приЙдется" Заказчики блюют, плюются, ржут и выбирают подрядчика, владеющего грамотным русскем языка по-минимуму (по-крайней мере, как минимум, выбирают любого узбека-таджика, получавшего среднее и высшее образование где угодно, но только не в России). Поэтому и франчи рулят!!! |
|||
49
Ковычки
18.11.08
✎
03:59
|
абалдели !!!
уже ведь было сказано, сохраняй в веб и успокойся |
|||
50
Ковьчки
18.11.08
✎
04:01
|
>>При проведении комплектации оборудования по УУ у меня выходит сообщение
Я имел в виду документ "Комплектация номенклатуры" в которой выбрал комп как выходное изделие и в качестве исходных комплектующих указал монитор системный блок. |
|||
51
sttt
18.11.08
✎
07:18
|
(39) "как программно из 1с взять ее из буфера и вставить в файл с расширением .bmp"
(49) Спрашивали, вот и ответил, мне то что :-) он же после (10) спрашивал :-)) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |