Positions shapes

Le
JP
Bonjour,

Comment amener un peu de précision dans la position d'un shape?


Je place un shape avec des coordonnées de cellules avec ce code:

Sheets("feuil1").Activate
' Affiche les shapes si il y a des valeurs dans la colonne A
For Each cell In Sheets("feuil1").Range("A11:A100")
If cell <> "" Then
Sheets("feuil1").Shapes("imgCCF").Select
Selection.Copy
cell.Offset(, 3).Select
Sheets("feuil1").Paste
End If
Next


Je voudrais le centrer sur la taille de la cellule (hauteur).
Que faut-il ajouter?
J'ai fait un petit exemple de la partie qui intéresse.
http://cjoint.com/?DEBs4ytvLWt

Merci

JP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #26158102
bonjour JP,

juste apres la ligne:
Sheets("feuil1").Paste

tu pourrais ajouter:
With Selection
.Left = cell.Offset(, 3).Left
.Top = cell.Offset(, 3).Top
.Width = cell.Offset(, 3).Width
.Height = cell.Offset(, 3).Height
End With

isabelle

Le 2014-05-27 12:57, JP a écrit :
Bonjour,

Comment amener un peu de précision dans la position d'un shape?


Je place un shape avec des coordonnées de cellules avec ce code:

Sheets("feuil1").Activate
' Affiche les shapes si il y a des valeurs dans la colonne A
For Each cell In Sheets("feuil1").Range("A11:A100")
If cell <> "" Then
Sheets("feuil1").Shapes("imgCCF").Select
Selection.Copy
cell.Offset(, 3).Select
Sheets("feuil1").Paste
End If
Next


Je voudrais le centrer sur la taille de la cellule (hauteur).
Que faut-il ajouter?
J'ai fait un petit exemple de la partie qui intéresse.
http://cjoint.com/?DEBs4ytvLWt

Merci

JP

isabelle
Le #26158132
ou bien,

With Selection
.Left = cell.Offset(, 3).Left
.Top = cell.Offset(, 3).Top
.Width = cell.Offset(, 6).Left - cell.Offset(, 3).Left
.Height = cell.Offset(, 3).Height
End With

isabelle

Le 2014-05-27 15:10, isabelle a écrit :
bonjour JP,

juste apres la ligne:
Sheets("feuil1").Paste

tu pourrais ajouter:
With Selection
.Left = cell.Offset(, 3).Left
.Top = cell.Offset(, 3).Top
.Width = cell.Offset(, 3).Width
.Height = cell.Offset(, 3).Height
End With

isabelle

Le 2014-05-27 12:57, JP a écrit :
Bonjour,

Comment amener un peu de précision dans la position d'un shape?


Je place un shape avec des coordonnées de cellules avec ce code:

Sheets("feuil1").Activate
' Affiche les shapes si il y a des valeurs dans la colonne A
For Each cell In Sheets("feuil1").Range("A11:A100")
If cell <> "" Then
Sheets("feuil1").Shapes("imgCCF").Select
Selection.Copy
cell.Offset(, 3).Select
Sheets("feuil1").Paste
End If
Next


Je voudrais le centrer sur la taille de la cellule (hauteur).
Que faut-il ajouter?
J'ai fait un petit exemple de la partie qui intéresse.
http://cjoint.com/?DEBs4ytvLWt

Merci

JP

JP
Le #26158732
Bonjour Isabelle,


Déjà, merci pour ta réponse. Je viens de tester, outre le fait que je ne veux pas redimensionner le shape en hauteur, tout se passe bien.
J'ai juste ajouter une valeur + 10 au top pour centrer sur la hauteur de la cellule.
Si la hauteur de cellule varie, ça ne sera plus le top du top si je peux me permettre ce trait d'humour.
Voici ce que j'ai maintenant:
With Selection
.Left = cell.Offset(, 3).Left
.Top = cell.Offset(, 3).Top + 10
.Width = cell.Offset(, 6).Left - cell.Offset(, 3).Left
' .Height = cell.Offset(, 3).Height
End With

JP
Publicité
Poster une réponse
Anonyme