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 :

Comment Signer automatiquement [XL-2019]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Data_Analyst
    Inscrit en
    Décembre 2020
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Data_Analyst

    Informations forums :
    Inscription : Décembre 2020
    Messages : 32
    Par défaut Comment Signer automatiquement
    Bonjour,

    Je souhaite savoir comment on peut remplir une cellule quelconque à partir d'une autre où une image a été coller dedans.
    Par exemple, imaginons que j'ai 3 personnes X,Y,Z en A1, A2,A3, en B1,B2,B3 , j'ai coller la signature de chacun et je voudrais pouvoir utiliser ces signatures dans une autre feuille lorsque je sélectionne leur nom sauf que je ne sais pas comment on fait pour récupérer les images car lorsque je colle l'image, ça ne me l'affecte pas à une cellule mais ça me le met n'importe où sur la feuille.
    Quelqu'un peut-il m'aider svp ?

    Merci d'avance,

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 676
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 676
    Par défaut
    Bonjour,

    Je ne suis pas expert en utilisation d'image, cependant je sais qu'on peut changer leur position avec Top et Left
    Par exemple pour mettre la première image en sur la position de la cellule A1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        ActiveSheet.Shapes.Range(Array("Picture 1")).Left = Cells(1, 1).Left
        ActiveSheet.Shapes.Range(Array("Picture 1")).Top = Cells(1, 1).Top

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 055
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour insérer une image dans une cellule, il existe la méthode InsertPictureInCell de l'objet Range mais j'ignore depuis qu'elle version elle est apparue Sinon j'ai écrit une fonction générique qui fait la même chose voir cette discussion

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub t()
      Dim rng As Range
      Set rng = ThisWorkbook.Worksheets("Feuil1").Range("H3")
      rng.InsertPictureInCell "c:\documents\signature.jpg"
      Set rng = Nothing
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre averti
    Homme Profil pro
    Data_Analyst
    Inscrit en
    Décembre 2020
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Data_Analyst

    Informations forums :
    Inscription : Décembre 2020
    Messages : 32
    Par défaut Merci Philippe
    Bonjour,

    J'ai essayé .InsertPictureinCell ça ne fonctionne pas, pourtant elle existe bien et j'ai recopié la même syntaxe que vous.
    Du coup j'ai réussi avec .Pictures.Insert(url) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    with .Pictures.Insert(url)
    .Left = Worksheet("My worksheet").Range("macellule").Left
    .Top = Worksheet("My worksheet").Range("macellule").Top
    End with

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 055
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    J'ai essayé .InsertPictureinCell ça ne fonctionne pas, pourtant elle existe bien et j'ai recopié la même syntaxe que vous.
    Du coup j'ai réussi avec .Pictures.Insert(url) :
    Oui c'est exactement la syntaxe que j'ai utilisée dans la discussion, d'il y a 2 ans, et que j'ai référencé dans ma réponse précédente.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Membre expérimenté
    Homme Profil pro
    CIP
    Inscrit en
    Avril 2024
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : CIP
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2024
    Messages : 194
    Par défaut une proposition
    Citation Envoyé par qvn83 Voir le message
    Bonjour,

    Je souhaite savoir comment on peut remplir une cellule quelconque à partir d'une autre où une image a été coller dedans.
    Par exemple, imaginons que j'ai 3 personnes X,Y,Z en A1, A2,A3, en B1,B2,B3 , j'ai coller la signature de chacun et je voudrais pouvoir utiliser ces signatures dans une autre feuille lorsque je sélectionne leur nom sauf que je ne sais pas comment on fait pour récupérer les images car lorsque je colle l'image, ça ne me l'affecte pas à une cellule mais ça me le met n'importe où sur la feuille.
    Quelqu'un peut-il m'aider svp ?

    Merci d'avance,
    Bonjour
    rien de bien compliqué en soit
    supposons que en feuil1[A1:3A3] j'ai une liste de nom et en colonne B sur les même lignes j'ai mes images (signatures)
    comme dans cette capture ci dessous
    Nom : Capture.JPG
Affichages : 85
Taille : 21,0 Ko

    maintenant dans ma feuille 2 je veux mettre la signature de "Jacques" en [D3]
    il me faut éventuellement supprimer une signature qui pourrait être déjà présente
    et copier la cellule de la colonne B de la ligne correspondant à Jacques en colonne A vers la cellules D3 de la feuille 2
    pour cela activer la fonction CopyObjectsWithCells de l'application en la mettant à true ( si elle ne l'ai pas déjà)

    il n'y a plus qu'à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Sub test()
        Dim Tabname, Nom$, destination As Range, X&
        Set destination = Feuil2.[D3]
        Set Tabname = Feuil1.[A1:A3]'détermine la plage des noms en colonne A de la feuil1
        Application.CopyObjectsWithCells = True    ' permet de copier les éventuels object dont le point haut et gauche se trouverait  dans le périmètre  de cellule copiée
     
        Nom = "Jacques"'on peut copier la signature de jacques 
           X = Application.Match(Nom, Tabname, 0)'on détermine  la ligne ou il se trouve 
        'on suuprime   une signature eventuellement présente en D3 de la feuil2
        For Each shap In Feuil2.Shapes
            If shap.TopLeftCell.adddress = destination.Address Then shap.Delete
        Next
     
        Tabname.Cells(X).Offset(, 1).Copy destination    ' on met la signature 
    End Sub
    démo

    Nom : demo.gif
Affichages : 80
Taille : 151,5 Ko

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 20/09/2007, 15h51
  2. [Eclipse 3.1.0]Comment signer une jar depuis eclipse ?
    Par Akira dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 19/04/2005, 17h31
  3. Comment détecté automatiquement Une base erronée.
    Par ada_b dans le forum Débuter
    Réponses: 4
    Dernier message: 13/01/2005, 08h56
  4. [Internet] Comment lancer automatiquement la connexion ?
    Par laayouni_mus dans le forum Web & réseau
    Réponses: 4
    Dernier message: 10/09/2004, 21h14
  5. [JDevelopper] Comment indenter automatiquement le code ??
    Par Bicnic dans le forum JDeveloper
    Réponses: 5
    Dernier message: 03/08/2004, 22h11

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