Innsertion image et modifier
b
bonjour
Grace de l'aide j'ai pu mettre mon image dans mes fiches
mon souci est dans le redimensionnement de cette image
et aussi de la rappeler lorsque j’utilise ma macro modifier
ci dessous mon code
Option Explicit
Private Sub CommandButton2_Click() 'Bouton VALIDER
Dim NewLig As Long
Dim laconcat As String
Dim Img As MSForms.Image, Cel As Range
'ELEMENT ENREGISTRE DANS LE TABLEAU PRESENTATION RECAP
With Sheets("02-Présentation Recap")
NewLig = Application.Max(10, .Range("A" & Rows.Count).End(xlUp).Row + 1)
.Range("A" & NewLig).Value = Application.WorksheetFunction.Max(Range("A:A")) + 1
'concatener les textbox pour cree le nom de l'onglet
laconcat = ComboBox4.Value & " _ " & TextBoxfiche.Text & " _ " & TextBoxannée.Text
.Range("B" & NewLig).Value = laconcat
.Range("C" & NewLig).Value = TextBoxobjet
.Range("D" & NewLig).Value = ComboBox1
End With
'ELEMENT ENREGISTRE DANS LE TABLEAU RECAP
With Sheets("00-Recap")
NewLig = Application.Max(10, .Range("A" & Rows.Count).End(xlUp).Row + 1)
.Range("A" & NewLig).Value = Application.WorksheetFunction.Max(Range("A:A")) + 1
.Range("C" & NewLig).Value = TextBoxobjet
.Range("Y" & NewLig).Value = ComboBox4
.Range("Z" & NewLig).Value = TextBoxfiche
.Range("AA" & NewLig).Value = CDate(TextBoxdate)
.Range("AB" & NewLig).Value = TextBoximputation
.Range("AC" & NewLig).Value = TextBoxlocalisation
.Range("AD" & NewLig).Value = ComboBox1
.Range("D" & NewLig).Value = ComboBox1
.Range("AE" & NewLig).Value = TextBoxannée
.Range("AF" & NewLig).Value = CheckBox1
.Range("AG" & NewLig).Value = CheckBox2
.Range("AH" & NewLig).Value = CheckBox3
.Range("AI" & NewLig).Value = TextBoxconstat
.Range("AJ" & NewLig).Value = TextBoxrisque
.Range("AK" & NewLig).Value = TextBoxorigine
.Range("AL" & NewLig).Value = CheckBox4
.Range("AM" & NewLig).Value = CheckBox5
.Range("AN" & NewLig).Value = CheckBox6
.Range("AO" & NewLig).Value = TextBoxtravaux
.Range("AP" & NewLig).Value = CheckBox7
.Range("AQ" & NewLig).Value = CheckBox8
.Range("AR" & NewLig).Value = CheckBox9
.Range("AS" & NewLig).Value = TextBoxobservation
.Range("AT" & NewLig).Value = TextBoxconstructeur
.Range("AU" & NewLig).Value = TextBoxdureevie1
.Range("AV" & NewLig).Value = TextBoxdureevie2
.Range("AW" & NewLig).Value = CHEMIN
'concatener les textbox pour cree le nom de l'onglet
laconcat = ComboBox4.Value & " _ " & TextBoxfiche.Text & " _ " & TextBoxannée.Text
.Range("B" & NewLig).Value = laconcat
End With
Application.ScreenUpdating = False
'On crée les onglets
'on copie le modèle en dernier
Worksheets("03-TRAME").Copy After:=Worksheets(ThisWorkbook.Sheets.Count)
With ActiveSheet
.Name = Worksheets("00-RECAP").Range("B" & NewLig) 'je renome
'Je remplit mon modèle comme je veut...
Range("K1") = ActiveSheet.Name
.Range("B3") = TextBoxobjet
.Range("A6") = TextBoxfiche
.Range("B6") = TextBoxdate
.Range("C6") = TextBoximputation
.Range("D6") = TextBoxlocalisation
.Range("E6") = ComboBox1
.Range("F6") = TextBoxannée
.Range("G6") = ComboBox4
.Range("A9") = TextBoxconstat
.Range("E11") = CheckBox1
.Range("E12") = CheckBox2
.Range("E13") = CheckBox3
.Range("A16") = TextBoxrisque
.Range("A21") = TextBoxorigine
.Range("E23") = CheckBox4
.Range("E24") = CheckBox5
.Range("E25") = CheckBox6
.Range("A28") = TextBoxtravaux
.Range("E31") = CheckBox7
.Range("E32") = CheckBox8
.Range("E33") = CheckBox9
.Range("A36") = TextBoxobservation
.Range("H15") = TextBoxconstructeur
.Range("K17") = TextBoxdureevie1
.Range("K18") = TextBoxdureevie2
'insert image en h20 en active x
Set Cel = ActiveSheet.Cells(20, "H")
Set Img = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Image.1", Link:=False, DisplayAsIcon:=False, _
Left:=Cel.Left, Top:=Cel.Top, Width:=Me.Image1.Width, Height:=Me.Image1.Height).Object
Img.Picture = Me.Image1.Picture
End With
Application.ScreenUpdating = True
Unload UserForm1
End Sub
Private Sub Textboxdate_Change()
'Code permettant de mettre une date au format 00/00/0000 dans une textbox
Dim valeur As Byte
TextBoxdate.MaxLength = 8 'nb caractères maxi autorisé dans le textbox
valeur = Len(TextBoxdate)
If valeur = 2 Or valeur = 5 Then TextBoxdate = TextBoxdate & "/"
End Sub
'choix des initiales sites insert du code imputation
Private Sub ComboBox4_Change()
Dim c As Range, sh As Worksheet
Set sh = Worksheets("01-données")
Set c = sh.[B:B].Find(ComboBox4, LookIn:=xlValues, lookat:=xlWhole)
TextBoximputation = IIf(c Is Nothing, "", c.Offset(, 1))
End Sub
'insertion d'image
Private Sub CommandButton3_Click()
Dim NF
NF = Application.GetOpenFilename("Fichiers jpg,*.jpg")
If Not NF = False Then
Me.CHEMIN = NF
Me.Image1.Picture = LoadPicture(NF)
Me.Image1.PictureSizeMode = fmPictureSizeModeStretch
End If
End Sub
'efface l'image
Private Sub CommandButton4_Click()
Image1.Picture = LoadPicture("")
End Submerci de votre aide