View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
isabelle isabelle is offline
external usenet poster
 
Posts: 587
Default VBA Script to insert image

hi,

Private Sub CommandButton1_Click()
Dim fd As FileDialog
Dim ffs As FileDialogFilters
Dim Rng As Range
Set Rng = ActiveSheet.Range("B8") ' adapt to your range
Rng.Select
Set fd = Application.FileDialog(msoFileDialogOpen)
With fd
Set ffs = .Filters
With ffs
.Clear
.Add "Pictures", "*.jpg"
End With
.AllowMultiSelect = False
If .Show = False Then Exit Sub
Fichier = fd.SelectedItems(1)
Set Pict = ActiveSheet.Pictures.Insert(Fichier)
Pict.ShapeRange.LockAspectRatio = msoFalse
Pict.Height = Rng.Height
Pict.Width = Rng.Width
End With
End Sub

isabelle

Le 2014-07-18 11:06, clvrbas a écrit :
Hi there,

I am struggling on getting a VBA script to work correctly for a
spreadsheet and I am seeking guidance. I am using Excell 2007
Professional and what I am trying to do is create a profile pages for an
event at work.

What i'm trying to do is have the profile page set up, and where the
picture will go have a box the user can click, once they click the box
it will load a window for them to browse their computers directory to
find the image, choose the image and say "ok" and it will insert and
resize the image to the specified cell size. Once the image is inserted
the box would either be covered up or disapear.

Can this be achieved? All I have been able to figure out is the
following which will not resize or set destination cell and only allows
JPEG's.

Please help! I am new to trying to code VBA projects.

Private Sub CommandButton1_Click()
Dim JPeg()
Dim flname As Variant
flname = Application.GetOpenFilename
If flname < False Then
If Right(flname, 3) = "jpg" Then
ActiveSheet.Pictures.Insert (flname)
Else
MsgBox "That is not a jpeg file"
End If
End If
End Sub