Inserer une image dans plusieurs cellules
Résolu
rickquo
Messages postés
6
Statut
Membre
-
Nepyim Messages postés 7 Statut Membre -
Nepyim Messages postés 7 Statut Membre -
Bonjour,
voila mon souci :
je voudrai importer une image,la redimensionner a la taille de plusieurs cellules excel fusionné.
j'ai réussi avec une macro mais celle ci adapte l'image qu'a une seul cellule.
merci d'avance
Sub Macro1()
Public Sub insere_image()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = ActiveCell.Top ' haut de la cellule
.Left = ActiveCell.Left ' gauche de la cellule
.Height = ActiveCell.RowHeight ' hauteur de la cellule
.Width = ActiveCell.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
voila mon souci :
je voudrai importer une image,la redimensionner a la taille de plusieurs cellules excel fusionné.
j'ai réussi avec une macro mais celle ci adapte l'image qu'a une seul cellule.
merci d'avance
Sub Macro1()
Public Sub insere_image()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = ActiveCell.Top ' haut de la cellule
.Left = ActiveCell.Left ' gauche de la cellule
.Height = ActiveCell.RowHeight ' hauteur de la cellule
.Width = ActiveCell.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
A voir également:
- Inserer une image dans plusieurs cellules
- Insérer une vidéo dans powerpoint - Guide
- Insérer une image dans word sans bouger le texte - Guide
- Insérer signature word - Guide
- Excel additionner plusieurs cellules - Guide
- Insérer liste déroulante excel - Guide
10 réponses
Bonjour,
Tu doit employé la plage complète des cellules fusionnées plutôt que la cellule de référence.
Par exemple Height = Range("A1:B3")
A+
Tu doit employé la plage complète des cellules fusionnées plutôt que la cellule de référence.
Par exemple Height = Range("A1:B3")
A+
Bonjour,
merci Lermite222,
mon souci c'est que je voudrai que l'image s'insère sur des cellules différente que je sélectionne.
a+
merci Lermite222,
mon souci c'est que je voudrai que l'image s'insère sur des cellules différente que je sélectionne.
a+
Beh moi j'ai lu ... de plusieurs cellules excel fusionné
maintenant la solution est la même tu prend la hauteur de la sélection
A+
Edit;
Par acquit de conscience j'ai tester et tu peu simplifier par
maintenant la solution est la même tu prend la hauteur de la sélection
a$ = Selection.Address h = Range(a$).Height
A+
Edit;
Par acquit de conscience j'ai tester et tu peu simplifier par
h = Selection.Height
Bonjour,
merci Lermite222,
oui tu as raison j'ai formulé ma question d'une façon et répondu d'une autre,mais l'idée est bien d'avoir des cellules fusionnés a des endroits différent de ma feuilles.
je vais essayer tout ça demain.
merci encore.
a+
merci Lermite222,
oui tu as raison j'ai formulé ma question d'une façon et répondu d'une autre,mais l'idée est bien d'avoir des cellules fusionnés a des endroits différent de ma feuilles.
je vais essayer tout ça demain.
merci encore.
a+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
merci Lermite222,
bon ben j'ai essayé avec Height = Range("A1:B3") à la place de .Height = ActiveCell.RowHeight mais il me colle l'image trop grande en largeur et en hauteur,
ensuite j'ai remplacer.Height = ActiveCell.RowHeight par .Height = Selection.Height la il respecte le largeur de la colonne mais pas la hauteur des cellules fusionner.
y a t'il un réglage dans excel pour que les image garde une hauteur paramètre ?
ou je me suis planté quelque part ?
merci d'avance.
merci Lermite222,
bon ben j'ai essayé avec Height = Range("A1:B3") à la place de .Height = ActiveCell.RowHeight mais il me colle l'image trop grande en largeur et en hauteur,
ensuite j'ai remplacer.Height = ActiveCell.RowHeight par .Height = Selection.Height la il respecte le largeur de la colonne mais pas la hauteur des cellules fusionner.
y a t'il un réglage dans excel pour que les image garde une hauteur paramètre ?
ou je me suis planté quelque part ?
merci d'avance.
je lit... la redimensionner a la taille de plusieurs cellules excel fusionné
C'est l'image que tu doit redimentionner et pas les cellules... -:))
C'est l'image que tu doit redimentionner et pas les cellules... -:))
Bonjour,
Oui c'est ce que j essaye de faire mais je ne sai pas ou je doit inssére la ligne h = Selection.Height
merci.
Oui c'est ce que j essaye de faire mais je ne sai pas ou je doit inssére la ligne h = Selection.Height
merci.
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = Selection.Top ' haut de la cellule
.Left = Selection.Left ' gauche de la cellule
.Height = Selection.Height ' hauteur de la cellule
.Width = Selection.Width ' largeur de la cellule
End With
Tu dit...
A+
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = Selection.Top ' haut de la cellule
.Left = Selection.Left ' gauche de la cellule
.Height = Selection.Height ' hauteur de la cellule
.Width = Selection.Width ' largeur de la cellule
End With
Tu dit...
A+
Bonjour,
j'ai lu avec beaucoup d'intérêt cette discussion parce que je veux faire de même (enfin c'est ce que je croyais parce que je n'y parviens pas). Je précise :
Je veux insérer une image en la recherchant par arborescence (comme c'est le cas) et l'insérer dans une cellule qui est en fait la fusion de plusieurs cellules.
Cette petite différence est peut-être significative parce que je ne parviens pas à l'insérer aux dimensions de la 'cellule fusionnée'.
merci d'avance
j'ai lu avec beaucoup d'intérêt cette discussion parce que je veux faire de même (enfin c'est ce que je croyais parce que je n'y parviens pas). Je précise :
Je veux insérer une image en la recherchant par arborescence (comme c'est le cas) et l'insérer dans une cellule qui est en fait la fusion de plusieurs cellules.
Cette petite différence est peut-être significative parce que je ne parviens pas à l'insérer aux dimensions de la 'cellule fusionnée'.
merci d'avance
Bonjour,
Qu'est-ce que tu ne parvient pas à faire ?
Pour rappel c'est en VBA, tu doit donc faire une macro
A+
Qu'est-ce que tu ne parvient pas à faire ?
Pour rappel c'est en VBA, tu doit donc faire une macro
A+
De la discussion précédente, voici ce que j'ai essayé :
Public Sub insere_image()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = ActiveCell.Top ' haut de la cellule
.Left = ActiveCell.Left ' gauche de la cellule
.Height = ActiveCell.RowHeight ' hauteur de la cellule
.Width = ActiveCell.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
Public Sub insere_image2()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = Selection.Top ' haut de la cellule
.Left = Selection.Left ' gauche de la cellule
.Height = Selection.Height ' hauteur de la cellule
.Width = Selection.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
Je rappelle que lorsque je teste ces macros, j'ai auparavant sélectionné une cellule qui est la fusion de 2 cellules (par exemple (A2:B2)), et que c'est à cette fusion que je souhaite ajuster mon image chargée.
Si je lance la macro 'insere_image' : le chargement de l'image se fait correctement mais cette image ne s'ajuste qu' à une seule des 2 cellules fusionnées (en l'occurence A2)
Si je lance la macro 'insere_image2' : le chargement de l'image se fait correctement mais cette image ne s'ajuste pas du tout et apparait en taille 100%.
Je ne dois pas être bien loin mais je coince. Merci d'avance pour vos lumières.
Public Sub insere_image()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = ActiveCell.Top ' haut de la cellule
.Left = ActiveCell.Left ' gauche de la cellule
.Height = ActiveCell.RowHeight ' hauteur de la cellule
.Width = ActiveCell.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
Public Sub insere_image2()
Dim ficimg As Variant
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
.Top = Selection.Top ' haut de la cellule
.Left = Selection.Left ' gauche de la cellule
.Height = Selection.Height ' hauteur de la cellule
.Width = Selection.Width ' largeur de la cellule
End With
With Selection
.PrintObject = True ' l'objet est imprimé en même temps que le document
.Placement = xlMoveAndSize ' manière dont l'objet est lié aux cellules
End With
End Sub
Je rappelle que lorsque je teste ces macros, j'ai auparavant sélectionné une cellule qui est la fusion de 2 cellules (par exemple (A2:B2)), et que c'est à cette fusion que je souhaite ajuster mon image chargée.
Si je lance la macro 'insere_image' : le chargement de l'image se fait correctement mais cette image ne s'ajuste qu' à une seule des 2 cellules fusionnées (en l'occurence A2)
Si je lance la macro 'insere_image2' : le chargement de l'image se fait correctement mais cette image ne s'ajuste pas du tout et apparait en taille 100%.
Je ne dois pas être bien loin mais je coince. Merci d'avance pour vos lumières.
Re,
Effctivement tu n'en est pas loin...
A+
Effctivement tu n'en est pas loin...
Sub insere_image2()
Dim ficimg As String, Ad As String
Ad = Selection.Address
ficimg = Application.GetOpenFilename(".jpg,*.jpg", , "Choisissez l'image") ' choix nom du fichier
If ficimg = "Faux" Then Exit Sub
ActiveSheet.Pictures.Insert(ficimg).Select ' insertion
With Selection.ShapeRange
.LockAspectRatio = False ' proportions d'origine lorsque vous la redimensionnez
'Pas besoin, c'est fait automatiquement sur la sélection
''''.Top = Range(Ad).Top ' haut de la cellule
'''''.Left = Range(Ad).Left ' gauche de la cellule
.Height = Range(Ad).Height ' hauteur des cellules fusionnées
.Width = Range(Ad).Width ' largeur des cellules fusionnées
End With
With Selection
.Placement = xlMoveAndSize
.PrintObject = True
End With
End Sub
A+
Merci beaucoup pour ces informations : c'est exactement ce que je cherchais... et je ne parvenais pas à définir la zone de sélection.
Merci mille fois, ça fait super plaisir de rencontrer des personnes qui ne sont a priori pas concernées par mon problème mais qui mettent de l'énergie et de l'enthousiasme à m'aider.
Merci encore
Nepyim
Merci mille fois, ça fait super plaisir de rencontrer des personnes qui ne sont a priori pas concernées par mon problème mais qui mettent de l'énergie et de l'enthousiasme à m'aider.
Merci encore
Nepyim