Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Вставка рисунка в Excel Добавлено: 05.08.08 11:59  

Автор вопроса:  shurk
Добрый день!!
Помогите пожалуйста.

Есть код:
iFilePicture$ = "C:\MyPicture.gif"

With Worksheets(1).Pictures.Insert(FileName:=iFilePicture$)
     .Top = 50
     .Left = 100
     .Width = 250
     .Height = 250
End With

Он вставляет определенную картинку из определенного места. Код работает если листы не защищены, а если какой, либо лист защищаешь он выдает ошибку.
Как сделать, так что бы картинка выбиралась и работала когда лист защищен.
Заранее спасибо.

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 Arseny



ICQ: 298826769 

Вопросов: 53
Ответов: 1732
 Профиль | | #1 Добавлено: 05.08.08 12:34
ну я так понимаю - снять защиту-вставить картинку-поставить защиту

снять защиту:
Sheets("Лист1";).Select
    ActiveSheet.Unprotect(password)
поставить защиту:
    Sheets("Лист1";).Select
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True


в общем-то это все из записи макросов....

Ответить

Номер ответа: 2
Автор ответа:
 shurk



Вопросов: 1
Ответов: 5
 Профиль | | #2 Добавлено: 05.08.08 12:41
А если без снятия защиты и с выбором любого рисунка.

Ответить

Номер ответа: 3
Автор ответа:
 Arseny



ICQ: 298826769 

Вопросов: 53
Ответов: 1732
 Профиль | | #3 Добавлено: 05.08.08 12:51
а если без включения компьютера, чисто ментально проецировать изображение на хард, усиленно повторяя название экселевского файла?

что не нравится в снятии и обратной установке защиты? и что именно не получается с выбором рисунка?

Ответить

Номер ответа: 4
Автор ответа:
 shurk



Вопросов: 1
Ответов: 5
 Профиль | | #4 Добавлено: 05.08.08 12:57
Как реализовать в коде вставку картинки. Ибо делаю для того, что бы другие люди могли добавлять любые рисунки.

Ответить

Номер ответа: 5
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #5
Добавлено: 05.08.08 13:18
    То есть, открыть для user'а диалог выбора файла рисунка?

Ответить

Номер ответа: 6
Автор ответа:
 shurk



Вопросов: 1
Ответов: 5
 Профиль | | #6 Добавлено: 05.08.08 13:23
да именно

Ответить

Номер ответа: 7
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #7 Добавлено: 05.08.08 14:07
Защите лист как обычно. Потом в коде напиши:
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
Application.Dialogs(xlDialogInsertPicture).Show
Открывается диалог выбора картинки. Так нужно ?

Ответить

Номер ответа: 8
Автор ответа:
 shurk



Вопросов: 1
Ответов: 5
 Профиль | | #8 Добавлено: 05.08.08 14:18
to Jasmin
во то что нужно.Спасибо.

А есть какой-нибудь параметр в этом коде для ограничения картинки по размерам, т.е. что бы картинка сжималась до определенных размеров

Ответить

Номер ответа: 9
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #9 Добавлено: 05.08.08 19:09
Selection.ShapeRange.Height = 333.25
Selection.ShapeRange.Width = 333.25
Это на размер картинки 11.75 см. 323.25 - на размер 11.85 см. Подбери, какой нужно тебе.

Ответить

Номер ответа: 10
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #10
Добавлено: 05.08.08 19:43
    А какая размерность единиц? Не привязаны ли оник размеру шрифта по умолчанию?

Ответить

Номер ответа: 11
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #11 Добавлено: 05.08.08 19:54
Про привязку честно не знаю. :-) Не смотрела. Я бы не заморачивалась и просто пока поставила опытным путем определенное значение размера картинки.

Ответить

Номер ответа: 12
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #12
Добавлено: 05.08.08 20:19
    Я почему спросил — например ширина столбца привязана именно к символу (архаизм Excel'я, как самой старой программы пакета), а у разных user'ов символ стоит разный. Отсюда разное "поведение" на разных компах. Это очень неприятно. Сталкивался когда-то с этой проблемой и решил её, но уже, конечно, напрочь забыл. :)

Ответить

Номер ответа: 13
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #13 Добавлено: 05.08.08 21:15
А если вставлять данные сразу определенным шрифтом может и ширина тогда будет одинаковая ? Вообще жалко, что напрочь забыл. Очень пригодилось бы. А так у меня как-то до сих пор все нормально отображалось. Правда мне не приходилось выравнивать по ширине ничего. :-) Оно само, как нужно становилось. :-)

Ответить

Номер ответа: 14
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #14
Добавлено: 05.08.08 21:43
    Привязка у Excel к шрифту по умолчанию, который задан в Сервис.Параметры.Общие. Причём не только размер, но и название шрифта. :(

Ответить

Номер ответа: 15
Автор ответа:
 shurk



Вопросов: 1
Ответов: 5
 Профиль | | #15 Добавлено: 06.08.08 11:13
Большое спасибо всем за помощь. Вы меня спасли

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам