Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
tan tan is offline
external usenet poster
 
Posts: 29
Default VBA to display image on a form - image is defined in Range Name

I have a picture stored in a range name in an excel spreadsheet. I need a
VBA to display the logo on a form. How can I go about doing it? In the
form, do I define it as an image? If so, then how do I point the image to
the range name?
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,163
Default VBA to display image on a form - image is defined in Range Name

Sub InsertPicture(PicturePath as String, PlacementCell as Range)
' PicturePath will be the file path (from your range)
' PlacementCell is the cell where the top left of the picture will go

Dim NewPic As Object

Set NewPic = PlacementCell.Parent.Pictures.Insert(PicturePath)
NewPic.Name = "Logo" ' allows you to easily refer to the picture in the
future
' (i.e. ActiveSheet.Pictures("Logo"))
NewPic.Top = PlacementCell.Top
NewPic.Left = PlacementCell.Left

End Sub
--
- K Dales


"Tan" wrote:

I have a picture stored in a range name in an excel spreadsheet. I need a
VBA to display the logo on a form. How can I go about doing it? In the
form, do I define it as an image? If so, then how do I point the image to
the range name?

  #3   Report Post  
Posted to microsoft.public.excel.programming
tan tan is offline
external usenet poster
 
Posts: 29
Default VBA to display image on a form - image is defined in Range Nam

Dales

The picture is actually in the spreadsheet, and has a range name defined
with it. I would not want to store the picture in a separate file. Will
your code works to access to picture from based on the range name?

Regards
"K Dales" wrote:

Sub InsertPicture(PicturePath as String, PlacementCell as Range)
' PicturePath will be the file path (from your range)
' PlacementCell is the cell where the top left of the picture will go

Dim NewPic As Object

Set NewPic = PlacementCell.Parent.Pictures.Insert(PicturePath)
NewPic.Name = "Logo" ' allows you to easily refer to the picture in the
future
' (i.e. ActiveSheet.Pictures("Logo"))
NewPic.Top = PlacementCell.Top
NewPic.Left = PlacementCell.Left

End Sub
--
- K Dales


"Tan" wrote:

I have a picture stored in a range name in an excel spreadsheet. I need a
VBA to display the logo on a form. How can I go about doing it? In the
form, do I define it as an image? If so, then how do I point the image to
the range name?

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,163
Default VBA to display image on a form - image is defined in Range Nam

My apologies, Tan - I misinterpreted your post to mean the file path was
stored in the range, not the actual picture. You can do the reverse - find
the reference to the picture object, by code like this:

Public Function PictureInRange(SearchRange As Range) As Object
Dim FoundPic As Object

For Each FoundPic In SearchRange.Parent.Pictures
If Not Intersect(FoundPic.TopLeftCell, SearchRange) Is Nothing Then _
Set PictureInRange = FoundPic
Next FoundPic

End Function

However, making use of the picture might be difficult. It can be copied and
pasted elsewhere on a worksheet, but I don't know any easy way to get it onto
a form (as far as I know you cannot paste into a userform image control.
--
- K Dales


"Tan" wrote:

Dales

The picture is actually in the spreadsheet, and has a range name defined
with it. I would not want to store the picture in a separate file. Will
your code works to access to picture from based on the range name?

Regards
"K Dales" wrote:

Sub InsertPicture(PicturePath as String, PlacementCell as Range)
' PicturePath will be the file path (from your range)
' PlacementCell is the cell where the top left of the picture will go

Dim NewPic As Object

Set NewPic = PlacementCell.Parent.Pictures.Insert(PicturePath)
NewPic.Name = "Logo" ' allows you to easily refer to the picture in the
future
' (i.e. ActiveSheet.Pictures("Logo"))
NewPic.Top = PlacementCell.Top
NewPic.Left = PlacementCell.Left

End Sub
--
- K Dales


"Tan" wrote:

I have a picture stored in a range name in an excel spreadsheet. I need a
VBA to display the logo on a form. How can I go about doing it? In the
form, do I define it as an image? If so, then how do I point the image to
the range name?

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,489
Default VBA to display image on a form - image is defined in Range Nam

Check out Stephen Bullen's PastePicture example.
http://www.oaltd.co.uk/Excel/SBXLPage.asp#VBA

Cheers
Andy

Tan wrote:
Dales

The picture is actually in the spreadsheet, and has a range name defined
with it. I would not want to store the picture in a separate file. Will
your code works to access to picture from based on the range name?

Regards
"K Dales" wrote:


Sub InsertPicture(PicturePath as String, PlacementCell as Range)
' PicturePath will be the file path (from your range)
' PlacementCell is the cell where the top left of the picture will go

Dim NewPic As Object

Set NewPic = PlacementCell.Parent.Pictures.Insert(PicturePath)
NewPic.Name = "Logo" ' allows you to easily refer to the picture in the
future
' (i.e. ActiveSheet.Pictures("Logo"))
NewPic.Top = PlacementCell.Top
NewPic.Left = PlacementCell.Left

End Sub
--
- K Dales


"Tan" wrote:


I have a picture stored in a range name in an excel spreadsheet. I need a
VBA to display the logo on a form. How can I go about doing it? In the
form, do I define it as an image? If so, then how do I point the image to
the range name?


--

Andy Pope, Microsoft MVP - Excel
http://www.andypope.info
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Hyperlink to an image in other worksheet, displaying entire image. twilliams Excel Worksheet Functions 0 February 7th 06 10:02 PM
Display Worksheet image on a form Dave Taylor[_4_] Excel Programming 0 November 18th 04 10:10 AM
Display Worksheet image on a form Dave Taylor[_3_] Excel Programming 1 November 18th 04 02:19 AM
Export the worksheet background image as an image file - possible? DataFreakFromUtah Excel Programming 2 April 10th 04 04:49 PM
Open image from web in window same size as image? Milos Setek Excel Programming 0 February 5th 04 03:33 AM


All times are GMT +1. The time now is 03:08 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"