position shape dans feuille

position shape dans feuille - VB/VBA/VBS - Programmation

Marsh Posté le 12-10-2011 à 21:34:18    

Bonsoir,
 
je voudrais savoir comment faire pour avoir les coordonnée d'une shape dans une page.
 
Je connais le nom de la shape donc j'arrive a la selectionner, mais je voudrais savoir ou elle se trouve afin de pouvoir coller ou creer une autre shape au plus proche.
 
 
Merci
 
PS: macro pour excel

Reply

Marsh Posté le 12-10-2011 à 21:34:18   

Reply

Marsh Posté le 13-10-2011 à 04:51:32    

Salut,

   With Feuil1.Shapes("Rectangle 1" )
        Debug.Print .Left, .Top, .Width, .Height
    End With


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
Reply

Marsh Posté le 13-10-2011 à 08:24:33    

euh désolé mais je ne comprend pas comment l'utiliser.
tu pourrais me faire un exemple avec des msgbox me montrant les coordonnee en X et Y.
 
 
PS: est ce valable sur toute la feuille, meme les partie que l'on ne vois pas qui se trouve plus bas ou plus haut selon le scrowling ?

Reply

Marsh Posté le 14-10-2011 à 00:54:29    

Salut,

Sub Tst2()
   With Feuil1.Shapes("Rectangle 1" )
        MsgBox "Left     : " & .Left & vbCrLf _
            & "Top     : " & .Top & vbCrLf _
            & "Width  : " & .Width & vbCrLf _
            & "Height : " & .Height & vbCrLf, vbOKOnly, ""
    End With
End Sub


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
Reply

Marsh Posté le 14-10-2011 à 07:52:52    

ok merci, je ne suis pas encore trop a l aise avec les with, je ne sais pas trop quand les utiliser

Reply

Marsh Posté le 14-10-2011 à 10:42:50    

Re, pour parcourir toutes les feuilles et Shapes

Option Explicit
 
Sub Tst()
Dim Ws As Worksheet
Dim Shp As Shape
    For Each Ws In ThisWorkbook.Worksheets
        For Each Shp In Ws.Shapes
            With Shp
                MsgBox Ws.Name & vbCrLf & Shp.Name & vbCrLf & _
                       "Left     : " & .Left & vbCrLf _
                       & "Top     : " & .Top & vbCrLf _
                       & "Width  : " & .Width & vbCrLf _
                       & "Height : " & .Height & vbCrLf, vbOKOnly, ""
            End With
        Next Shp
    Next Ws
End Sub


Message édité par kiki29 le 14-10-2011 à 22:31:54

---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
Reply

Marsh Posté le 14-10-2011 à 14:28:52    

Tu peux faire directement

With Shp


Au lieu de rechercher à nouveau la shape via Ws.Shapes(shp.name) :)

Reply

Marsh Posté le 14-10-2011 à 22:32:56    

Re, arf effectivement


---------------
Myanmar 90/91 : http://gadaud.gerard.free.fr/publi [...] index.html
Reply

Marsh Posté le 15-10-2011 à 00:19:57    

et ben merci pour toute cette aide ;o)
 
je reviendrais ;oD

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed