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 :

Erreur lors de la récupération du contenu du presse-papiers dans une variable [XL-2002]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Par défaut Erreur lors de la récupération du contenu du presse-papiers dans une variable
    Bonjour à tous,

    Dans le cadre d'un projet, je dois exécuter des commandes dans une application autre que la suite Office. Je souhaite récupérer le résultat obtenu et le copier dans un fichier texte. Dans la macro, je sélectionne tous le texte et le colle dans le presse papier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     Call Sendkeys("^A", True)
        Call Sleep(300)
     
        Call Sendkeys("^{INSERT}", True)
        Call Sleep(300)
    Ensuite, je récupère le contenu du presse-papier dans une variable en faisant :
    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
     
        Dim Resultat As String
     
        With New DataObject  'Récupération du contenu du presse-papier dans la variable Resultat
            .GetFromClipboard
            Resultat = .GetText(1)
        End With
     
    Puis je colle le contenu de ma variable dans un fichier texte :
     
        Dim i As Integer 
     
        i = FreeFile
        Open "D:\tmp.txt" For Append As i 'Ouverture du fichier texte temporaire
        Print #i, Resultat 'Ecriture du contenu de la variable Resultat dans le fichier texte temporaire
        Close i 'Fermeture et sauvegarde du fichier texte temporaire
    Seulement, lors de l'exécution j’obtiens le message d'erreur suivant :

    DataObject:GetText Structure FORMATETC non valide
    En cherchant sur internet je ne trouve rien de concret et je commence à être à court d'idée.

    Merci par avance pour vos réponses.

    KiksGirl

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    A mon avis, ça vient du format des données stockées dans le presse papier (format non reconnu par l'objet DataObject) mais je peux me tromper !!!

    Hervé.

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Par défaut
    Bonjour,

    En fait, le problème vient du fait que je ne laissait pas le temps à l'application en question pour exécuter le requête. J'ai donc augmenté la tempo et je n'ai plus d'erreur.

    Cordialement,

    Kiksgirl

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

Discussions similaires

  1. coller le contenu du presse papier dans une variable
    Par lucassou dans le forum VB.NET
    Réponses: 5
    Dernier message: 01/05/2015, 10h38
  2. Réponses: 8
    Dernier message: 21/03/2015, 16h17
  3. Réponses: 4
    Dernier message: 07/05/2012, 14h20
  4. Réponses: 1
    Dernier message: 29/09/2007, 10h46
  5. Mettre le contenu d'un TMemo dans une variable
    Par beral dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/08/2006, 01h57

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