Quel est le code de Vba, je dois inscrire pour Déverrouillé l'image
franky1992
Messages postés
19
Statut
Membre
-
franky1992 Messages postés 19 Statut Membre -
franky1992 Messages postés 19 Statut Membre -
Bonjour,
J'aimerais savoir comment... Ou plutôt quel est le code de Vba, je dois inscrire pour Déverrouillé l'image
Car ma feuille est protégée et j'aimerais quand j'importe une image de pouvoir la bouger et la grandir !
Je sais on peut déverrouiller et verrouillé des cellule en VBA, mais avec des objets ou images comment ?

Si impossible ! Comment sinon on peut lui affecter un lien Marco automatiquement a l'ajout de limage
Merci :)
J'aimerais savoir comment... Ou plutôt quel est le code de Vba, je dois inscrire pour Déverrouillé l'image
Car ma feuille est protégée et j'aimerais quand j'importe une image de pouvoir la bouger et la grandir !
Je sais on peut déverrouiller et verrouillé des cellule en VBA, mais avec des objets ou images comment ?

Si impossible ! Comment sinon on peut lui affecter un lien Marco automatiquement a l'ajout de limage
Merci :)
Sub InsertPic()
' ActiveSheet.Unprotect Password:="123"
Dim profile As String
On Error GoTo 0
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Filters.Clear
.Filters.Add "Picture Files", "*.bmp;*.jpg;*.gif;*.png"
.ButtonName = "Select"
.AllowMultiSelect = False
.Title = "Choose Photo"
.InitialView = msoFileDialogViewDetails
.Show
End With
ActiveSheet.Range("B110").Select
ActiveSheet.Shapes.AddPicture Filename:=fd.SelectedItems(1), _
linktofile:=msoFalse, _
savewithdocument:=msoCTrue, _
Left:=ActiveSheet.Range("B110").Left + 2, _
Top:=ActiveSheet.Range("B110").Top + 2, _
Width:=250, _
Height:=115
' ActiveSheet.Protect Password:="123"
End Sub
4 réponses
-
Bonjour,
essaie ceci:
ActiveSheet.Shapes(1).Locked = msoFalse
-
Fonctionne pas !
End With
ActiveSheet.Range("B110").Select
ActiveSheet.Shapes(1).Locked = msoFalse
ActiveSheet.Shapes.AddPicture Filename:=fd.SelectedItems(1), _
linktofile:=msoFalse, _
savewithdocument:=msoCTrue, _
Left:=ActiveSheet.Range("B110").Left + 2, _
Top:=ActiveSheet.Range("B110").Top + 2, _
Width:=250, _
Height:=115
ou il y a tu une position particulière a l’intégré ?
Merci !-
comme ceci:
Sub InsertPic() ActiveSheet.Unprotect Password:="123" Dim profile As String On Error GoTo 0 Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .Filters.Clear .Filters.Add "Picture Files", "*.bmp;*.jpg;*.gif;*.png" .ButtonName = "Select" .AllowMultiSelect = False .Title = "Choose Photo" .InitialView = msoFileDialogViewDetails .Show End With ActiveSheet.Range("B110").Select ActiveSheet.Shapes.AddPicture Filename:=fd.SelectedItems(1), _ linktofile:=msoFalse, _ savewithdocument:=msoCTrue, _ Left:=ActiveSheet.Range("B110").Left + 2, _ Top:=ActiveSheet.Range("B110").Top + 2, _ Width:=250, _ Height:=115 ActiveSheet.Shapes(1).Locked = msoFalse ActiveSheet.Protect Password:="123" End Sub
@+- si tu veux nommer ton image, c'est cela:
Sub InsertPic() ActiveSheet.Unprotect Password:="123" Dim profile As String On Error GoTo 0 Dim fd As FileDialog Dim img As Excel.Shape Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .Filters.Clear .Filters.Add "Picture Files", "*.bmp;*.jpg;*.gif;*.png" .ButtonName = "Select" .AllowMultiSelect = False .Title = "Choose Photo" .InitialView = msoFileDialogViewDetails .Show End With ActiveSheet.Range("B110").Select Set img = ActiveSheet.Shapes.AddPicture(Filename:=fd.SelectedItems(1), _ linktofile:=msoFalse, _ savewithdocument:=msoCTrue, _ Left:=ActiveSheet.Range("B110").Left + 2, _ Top:=ActiveSheet.Range("B110").Top + 2, _ Width:=250, _ Height:=115) img.Name = "monimage" ActiveSheet.Shapes("monimage").Locked = msoFalse ActiveSheet.Protect Password:="123" End Sub
donc 2 possibilités
@+
-
-
Merci :)
et lui mettre un lien dune macro dessus l'image ces possible ?-
Comment Affecter une macro à une image ?
Attacher une macro à une image
Placer le curseur sur le dessin.
Appuyer sur le bouton droit de la souris.
Sélectionner l'option Affecter une macro dans le menu contextuel.
Sélectionner la macro-commande de votre choix dans la liste.
Appuyer sur le bouton OK.
@+ -
Je voulais dire à partir de ce code ! En gros, c'est un genre d'album photos d'inspection et j'aimerais mettre un lien Macro dans mes images quand je les load dans l'excel pour activer un code d'agrandissement et rapitsement.
Je ne ces pas si ça ce fait !
Je me débrouille, mais ces 3 4 chose-là, je trouve rien qui en parle !
Merci ! -
Voici avec un lien hypertexte en B109
Sub InsertPic() ActiveSheet.Unprotect Password:="123" Dim profile As String On Error GoTo 0 Dim fd As FileDialog Dim img As Excel.Shape Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .Filters.Clear .Filters.Add "Picture Files", "*.bmp;*.jpg;*.gif;*.png" .ButtonName = "Select" .AllowMultiSelect = False .Title = "Choose Photo" .InitialView = msoFileDialogViewDetails .Show End With ActiveSheet.Range("B110").Select Set img = ActiveSheet.Shapes.AddPicture(Filename:=fd.SelectedItems(1), _ linktofile:=msoCTrue, _ savewithdocument:=msoCTrue, _ Left:=ActiveSheet.Range("B110").Left + 2, _ Top:=ActiveSheet.Range("B110").Top + 2, _ Width:=250, _ Height:=115) img.Name = "monimage" ActiveSheet.Shapes("monimage").Locked = msoFalse ActiveSheet.Hyperlinks.Add Anchor:=ActiveSheet.Range("B109"), _ Address:=fd.SelectedItems(1), _ ScreenTip:="monimage", _ TextToDisplay:="monimage" ActiveSheet.Protect Password:="123" End Sub
@+ -
Si tu veux mettre plusieurs images, voici un code avec le nom de l'image:
Sub InsertPic() ActiveSheet.Unprotect Password:="123" Dim profile As String On Error GoTo 0 Dim fd As FileDialog Dim img As Excel.Shape Dim nom As String Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .Filters.Clear .Filters.Add "Picture Files", "*.bmp;*.jpg;*.gif;*.png" .ButtonName = "Select" .AllowMultiSelect = False .Title = "Choose Photo" .InitialView = msoFileDialogViewDetails .Show End With ActiveSheet.Range("B110").Select Set img = ActiveSheet.Shapes.AddPicture(Filename:=fd.SelectedItems(1), _ linktofile:=msoFalse, _ savewithdocument:=msoCTrue, _ Left:=ActiveSheet.Range("B110").Left + 2, _ Top:=ActiveSheet.Range("B110").Top + 2, _ Width:=250, _ Height:=115) nom = Dir(fd.SelectedItems(1)) 'nom de l'image nom = Split(nom, ".")(0) 'nom de l'image sans l'extension img.Name = nom ActiveSheet.Shapes(nom).Locked = msoFalse ActiveSheet.Hyperlinks.Add Anchor:=ActiveSheet.Range("B109"), _ Address:=fd.SelectedItems(1), _ ScreenTip:=nom, _ TextToDisplay:=nom ActiveSheet.Protect Password:="123" End Sub
@+ -
En vrai, je cherche comme tu parles ici.
"
Comment Affecter une macro à une image ?
Attacher une macro à une image
Placer le curseur sur le dessin.
Appuyer sur le bouton droit de la souris.
Sélectionner l'option Affecter une macro dans le menu contextuel.
Sélectionner la macro-commande de votre choix dans la liste.
Appuyer sur le bouton OK.
"
Mais en VBA ! en gros sur la suite du code j’aimerais avoir un lien macro dessus styles "Affichage()" pour quand je clique sur limage une macro est activé pour un code qui va agrandir l'image !
Ces tu possible ? Ou on ne peut que manuellement !
Merci pour ta réponse :)
-
-