Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек. / 6 сообщений из 6, страница 1 из 1
10.07.2007, 08:26
    #34649151
alex_ist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Помогите, нужно срочно решить вопрос.
Надо с помощью макроса вставлять в EXCEL рисунок в строго определенное место и нужно, чтобы размер рисунка был в пределах размера этого диапазона ячеек.
В шаблоне документа уже есть именованный диапазон ячеек (Range) куда надо вставлять рисунок.
Было бы неплохо, чтобы рисунок еще центровался внутри Range.
...
Рейтинг: 0 / 0
10.07.2007, 08:55
    #34649195
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Dim myrange As Range
Set myrange = Range("B26:J45")

With ActiveSheet.Shapes("Picture 5")
.LockAspectRatio = msoFalse
.Left = myrange.Left
.Top = myrange.Top
.Width = myrange.Width
.Height = myrange.Height
End With
myrange.Select
...
Рейтинг: 0 / 0
10.07.2007, 08:55
    #34649197
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim myrange As Range
Set myrange = Range("B26:J45")

With ActiveSheet.Shapes("Picture 5")
.LockAspectRatio = msoFalse
.Left = myrange.Left
.Top = myrange.Top
.Width = myrange.Width
.Height = myrange.Height
End With
myrange.Select
...
Рейтинг: 0 / 0
10.07.2007, 11:00
    #34649532
alex_ist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Спасибо за помощь
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
04.02.2013, 12:26
    #38136025
Ручей
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Подскажите, пожалуйста.
Вот функция вставки рисунка в excel.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
' Вставка картинки
'========================================================
Function InsertWmfPicture(WMFPath)
	' Привяжемся к верхнему левому углу
	rr="A5"
	ObjExc.ActiveSheet.Range(rr).Select
	Set r1 = ObjExc.Range("B6:K18")
	Set  a = ObjExc.ActiveSheet.Pictures.Insert(WMFPath)
       a.ShapeRange.LockAspectRatio = 1
       a.ShapeRange.Height  = r1.Height
       ratio = (a.ShapeRange.Height/a.ShapeRange.Width)
       aspect = (r1.Height/r1.Width)
  If  (ratio<aspect) Then 
			a.ShapeRange.Width  = r1.Width
  End If
   'Выровнить рисунок по центру
   a.ShapeRange.IncrementLeft (ObjExc.Range("A6:K18").Width-a.ShapeRange.Width)/2
   a.ShapeRange.IncrementTop (ObjExc.Range("A5:K19").Height-a.ShapeRange.Height)/2
End Function


Картинка вставляется. Если открыть документ на другом компе, то есть объект картинки, но нет картинки. Получается, что сама картинка не вставилась? а лишь связь?
Если в екселе запишу макрос вставки картинки, то получится такой код
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Sub Макрос2()
'
' Макрос2 Макрос
'
    ActiveSheet.Pictures.Insert( _
        "C:\Documents and Settings\Александр\Мои документы\Мои рисунки\tfile_img_big2.jpg" _
        ).Select
End Sub


Если сохраним файл и откроем его на др компе, то картинка будет та, что вставлена вручную. Если запустим этот макрос, то вставленная картинка на др компе так будет отсутствовать.
Как быть? Как картинку сохранить в файле?
...
Рейтинг: 0 / 0
04.02.2013, 16:44
    #38136644
Ручей
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек.
Проблема была в том, что в Excele 2010 вставка картинки работает иначе, чем в предыдущих версиях.
Данный вопрос решился следующим кодом
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
' Вставка картинки в шаблон
'========================================================
Function InsertWmfPicture(WMFPath)
		x=ObjExc.Range("A5").Left
		y=ObjExc.Range("A5").Top
Set r1 = ObjExc.Range("B6:K"&RPic-1)
		Height=r1.Height
		Width=r1.Width
Set  a = ObjExc.ActiveSheet.Shapes.AddPicture(WMFPath, False, True, x, y, 100, 100)
     a.ScaleHeight 1, 1
     a.ScaleWidth 1, 1
     a.LockAspectRatio = 1
     a.Width=Width
     a.Height=Height
     ratio = (a.Height/a.Width)
     aspect = (r1.Height/r1.Width)
If  (ratio<aspect) Then 
			a.Width  = r1.Width
End If
   'Выровнить рисунок по центру
   a.IncrementLeft (ObjExc.Range("A6:K"&RPic-1).Width-a.Width)/2
   a.IncrementTop (ObjExc.Range("A5:K"&RPic).Height-a.Height)/2
End Function
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка рисунка в EXCEL c подгонкой его размера под размер диапазона ячеек. / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]