IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

coordonnées d'image sur feuille exel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 217
    Par défaut coordonnées d'image sur feuille exel
    Je voudrais récupérer les coordonées de plusieurs photos positionnées sur une feuille EXEL

    voici une ébauche de code qui ne marche pas !
    mais bon c'est pour donner une idée de ce que je cherche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim photo As Object
    Sub coordonees()
    c = 1
    'ici on passe  toutes les images en revue et affiche leur abscisse en colonne A
    For Each photo In Shapes
    Range("A" & c).Value = photo.Left
    c = c + 1
    Next
    End Sub
    l'erreur doit être grossière mais je ne la trouve pas tout seul dans mon coin

  2. #2
    Membre confirmé Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 217
    Par défaut
    ça y est !!!!!
    avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For Each photo In ActiveSheet.Pictures
    ça marche trés bien !

    excusez moi d'encombrer le forum
    mais cette remarque peut aider quelques programmeurs perdus comme moi

    A+
    et BRAVO a tous les participants de ce cite....

  3. #3
    Membre confirmé Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 217
    Par défaut
    Mais un probleme m'interpelle !

    j' ai 2 images de 256x256 pixels
    si je les met cote a cote sur une feuille
    avec la premiere calée a gauche
    la macro me renvoie abcisse 192 pour l'image de droite.....

    pouquoi c'est pas 256

  4. #4
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Et si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox ActiveSheet.Pictures("NomImageGauche").Width
    ca donne quoi ?

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Citation Envoyé par Oh!Tofocus Voir le message
    Mais un probleme m'interpelle !

    j' ai 2 images de 256x256 pixels
    si je les met cote a cote sur une feuille
    avec la premiere calée a gauche
    la macro me renvoie abcisse 192 pour l'image de droite.....

    pouquoi c'est pas 256
    Parce que l'échelle utilisée par Excel est en Points et non en Pixels ...
    Et que 256 pixels font 192 points...
    Vala !

    Edit :
    Et je peux te dire depuis où je me trouve que ton écran est configuré en 15 twips par pixel horizontalement

    la preuve ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Command1_Click()
      Dim testwipsh As Integer, pixelsparpoucex As Double, pointsparpoucex As Double
      testwipsh = 15 ' cà, ami, c'est TON écran à toi
      pixelsparpoucex = 1440 / testwipsh
      pointsparpoucex = 72
      k = pixelsparpoucex / pointsparpoucex
      MsgBox "voilà, sur TA machine, tes 256 pixels en points ===>>" & 256 / k
    End Sub

    Ah ! les joies de VBA ...

  6. #6
    Membre confirmé Avatar de Oh!Tofocus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    217
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 217
    Par défaut
    merci pour votre aide.

    pour la reponse de find je trouve 192 ce qui parait logique

    pour la reponse de ucfoutu j'apprécie la précision de la réponse.

    Mais est-il possible de prévoir la valeur en point d'une image 256x256
    c'est a dire pouvoir en VBA retrouver la valeur de testwipsh ( dans mon cas 15 comme ucfoutu l' a trés bien expliqué)
    en effet je voudrais que ma macro s'adapte sur d'autres PC ( avec une autre configuration d'écran !

    ma macro positionne des images de 256x256 pixels cote a cote

    actuellement sur ma becane elles sont touts les 192 points ( mais je suppose que ce sera different sur un autre PC je le testerai bientôt )

    help je ne danse pas trop bien le twips

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bon...

    Juste une idée car je n'ai pas mon portable de disponible (avec Excel) et ne peux vérifier ce qu'il retourne (en points ou en pixels ?) lorqu'on lui demande de nous dire quelles sont les dimensions de la fenêtre de l'application.
    Application.width, je pense...

    S'il la retourne en points, t'es sauvé car alors on utilisera une fonction de l'Api de Windows pour connaître la résolution de l'écran (en pixels, elle) et ... hop... on en déduira notre coefficient k par un simple calcul arithmétique ...

    Fais celà pour moi ... dis-nous ce que te renvoit, par exemple, Application.width (si c'est bien Application .idth) et dis-nous quelle est la résolution de ton écran (que tu peux voir dans ta configuration). Cela me permettra de savoir si la valeur retournée est en points (auquel cas ce sera simple) ou en pixels.

    A +

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2013] Suppression d' image sur feuille excel par macro
    Par GROBIN dans le forum Excel
    Réponses: 3
    Dernier message: 16/11/2013, 23h07
  2. positionner image sur feuille exel
    Par Oh!Tofocus dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/06/2008, 18h18
  3. position des images sur feuille excel
    Par PATHAB dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/02/2008, 11h03
  4. graphe 3D et affichage sur feuille exel ou word
    Par dadou2002 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 05/04/2007, 16h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo