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 :

Copier le contenu d'une variable qui dépasse la capacité d'une celulle


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de deuche
    Homme Profil pro
    Gestion économique
    Inscrit en
    Mars 2011
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion économique

    Informations forums :
    Inscription : Mars 2011
    Messages : 99
    Par défaut Copier le contenu d'une variable qui dépasse la capacité d'une celulle
    Bonjour,

    Je voudrais copier une variable (chaine de caractères) qui dépasse les 32768 octets. On ne peut donc pas la coller dans une cellule excel.

    Je voudrai la coller en mémoire pour une réutilisation via Ctrl+V


    En vous remerciant.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    242
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 242
    Par défaut
    Bonjour,

    Une solution simple consiste à utiliser l'objet DataObject.
    Pour pouvoir l'utiliser, soit tu as déjà un Userform dans ton Projet VBA, soit tu rajoutes une référence à "Microsoft Forms" (via l'éditeur VBA, Outils \ Références).

    Ensuite, tu crées une fonction pour Copier du texte vers le presse-papiers :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub CopierVersPressePapiers(S As String)
        Dim DataObj As New MSForms.DataObject
        DataObj.SetText S
        DataObj.PutInClipboard
    End Sub
    Tu n'as plus qu'à appeler cette fonction avec en paramètre le texte que tu veux copier.

    Ensuite tu fais Ctrl+V où tu veux.

    Tu peux aussi récupérer dans une variable le texte contenu dans le presse-papiers :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function RecupPressePapiers() As String
        Dim DataObj As New MSForms.DataObject
        DataObj.GetFromClipboard
        RecupPressePapiers = DataObj.GetText
    End Function
    En espérant que cette proposition correspond à ce que tu cherches...

  3. #3
    Membre extrêmement actif Avatar de deuche
    Homme Profil pro
    Gestion économique
    Inscrit en
    Mars 2011
    Messages
    99
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion économique

    Informations forums :
    Inscription : Mars 2011
    Messages : 99
    Par défaut
    Merci beaucoup avec un peu de retard...

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 15/06/2015, 10h34
  2. Réponses: 1
    Dernier message: 09/09/2011, 16h38
  3. Réponses: 4
    Dernier message: 10/10/2010, 23h06
  4. Réponses: 8
    Dernier message: 30/11/2005, 10h00

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