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 :

[VBA] Problème au niveau du copier


Sujet :

Macros et VBA Excel

  1. #1
    Membre chevronné Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Par défaut [VBA] Problème au niveau du copier
    Bonjour,

    Comme certains l'ont surement constaté, je suis dans le copier/coller ces temps ci. Tout fonctionne pour le collage mais j'ai un problème au niveau du copiage. Je dois exécuter cette macro deux fois de suite pour avoir quelque chose dans ma variable sClipBoard.
    Voici le code :
    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
    16
    17
    Sub CTEST()
        Dim sClipBoard As String
        Dim sToSend As String
     
    '    Call ViderPressePapier
        Call subInitialisation
        Call subDEVAReactivate
        sToSend = "^c"
        subEnvoyerKeys sToSend
        With New DataObject
            .GetFromClipboard
            sClipBoard = .GetText(1)
        End With
     
        MsgBox sClipBoard
     
    End Sub
    Ma fonction ViderPressePapier envoye "" dans le ClipBoard mais je l'utiliserai plus tard lors d'une boucle.

    subInitialisation et subDEVAReactivate fonctionne bien.

    Et voici subEnvoyerKeys :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub subEnvoyerKeys(KeysTo As String)
        objDEVA.SendKeys KeysTo
    End Sub
    Dans ce code, j'envoie "^c" pour simuler les touches Ctrl+c pour le copie.
    Si je remplace "^c" par "123", je voie bien que mon champ reçoit bien "123"

    Ma question est simple (c'est probablement la réponse qui sera moins simple) Pourquoi dois-je exécuter ma macro deux fois tandis que je sais qu'avec 123 tout fonctionne du premier coup?

    Merci encore!

  2. #2
    Membre chevronné Avatar de drakkar_agfa
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    618
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 618
    Par défaut
    J'ai résolu mon problème avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        sToSend = "^c"
        subEnvoyerKeys sToSend
        subAttendre (1)
    et ensuite j'utilise le ClipBoard.

    Et la fonction Attendre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub subAttendre(iSeconde As Integer)
     
        Dim newHour, newMinute, newSecond, waitTime
     
        newHour = Hour(Now())
        newMinute = Minute(Now())
        newSecond = Second(Now()) + iSeconde
        waitTime = TimeSerial(newHour, newMinute, newSecond)
     
        Application.Wait waitTime
     
    End Sub
    Bonne journée.

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

Discussions similaires

  1. [DEBUTANT - VBA] Problèmes de ComboBox
    Par _Maniak dans le forum Général VBA
    Réponses: 13
    Dernier message: 10/03/2006, 10h02
  2. problème au niveau de restore database
    Par Redouane dans le forum Administration
    Réponses: 2
    Dernier message: 07/09/2005, 11h49
  3. [Excel - VBA] Problème de suppression de lignes...
    Par beholder2 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 28/01/2005, 17h27
  4. [DNS MX]Avec DynDNS.org, problème au niveau du MX
    Par Swoög dans le forum Développement
    Réponses: 9
    Dernier message: 24/08/2004, 22h00
  5. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24

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