Insérer dans une shape
Catégorie : Images
Publié par veriland le 12-Aug-2013 21:10

En faisant un clic droit de la souris sur une shape, ouvrir le boite de dialogue du lecteur et choisir une image... celle ci s'insère ensuite dans la forme...c'est très rapide, très simple d'éxécution et très efficace...surtout lorsqu'on est amené à insérer des images dans plusieurs formes...

 

veriti

 

partie à coller dans Thisworbook

 module

 

Option Explicit

Private Sub Workbook_Activate()
  Initialise
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  SupprimeControles
End Sub

Private Sub Workbook_Deactivate()
  SupprimeControles
End Sub

Private Sub Workbook_Open()
  Initialise
End Sub

partie à coller dans une feuille

module

 
Option Explicit
' ici c'est pour désactiver le clic droit des cellules
' Cancel = True
' mais c'est pas indispensable...c'est juste pour la démo

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
  Cancel = True
End Sub

partie à coller dans un module
module

 
Option Explicit


Option Private Module
'Thierry Pourtier 
'octobre 03

'MyTag est une chaîne permettant de distinguer tes contrôles
Const MyTag As String = "MnsComnt"
Const Barre As String = "Shapes"

Sub Initialise()
Dim LBar As CommandBar, Ctrl As CommandBarControl
Dim Cel As Range
  On Error Resume Next
  SupprimeControles
  Set LBar = Application.CommandBars(Barre)
  For Each Ctrl In LBar.Controls
    Ctrl.Visible = False
  Next Ctrl
  With LBar
    
  End With
  With LBar.Controls _
    .Add(Type:=msoControlButton, before:=1, temporary:=True)
    .Caption = "Racine du lecteur C:"
    .OnAction = "GotoRacine"
    .Tag = MyTag
  End With
End Sub

Sub SupprimeControles()
  On Error Resume Next
  Application.CommandBars(Barre).Reset
End Sub

Private Sub GotoRacine()
' Vériland Octobre 2003

Dim Image As Variant
On Error Resume Next
ChDir "C:"
Image = Application.GetOpenFilename("Images (*.bmp;*.gif;*.jpg),*.bmp;*.gif;*.jpg")
Selection.ShapeRange.Fill.UserPicture Image

End Sub