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 :

Les Limites du VBA ? [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Expert en assurance
    Inscrit en
    Août 2012
    Messages
    55
    Détails du profil
    Informations professionnelles :
    Activité : Expert en assurance
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2012
    Messages : 55
    Par défaut Les Limites du VBA ?
    bonjour,

    Je me permet de vous solliciter à nouveau, plus j'apprend de choses, plus je me rend compte que je ne sais rien !

    Est il possible, via une macro rattachée à un raccourci clavier de coller un texte provenant d'un document word dans une cellule fusionnée ?

    Mon sombre cerveau à constaté que le fait de copier le texte dans la barre de formule (une fois la cellule sélectionnée) fonctionne.

    Est il possible de retranscrire cette action en langage VBA ..?

    Cordialement.

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonjour,

    Pour faire un coller du texte contenu dans le presse-papier dans la cellule active :

    - Ajoute la référence Microsoft Forms 2.0 Object Library au projet VBA
    - Colle la fonction CollageParValeur dans un module du projet VBA

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ' ajouter la référence "Microsoft Forms 2.0 Object Library"
    Sub CollageParValeur()
        Dim obj As New MSForms.DataObject
        obj.GetFromClipboard
        ActiveCell.Value = Trim(obj.GetText())
        Set obj = Nothing
    End Sub

  3. #3
    Membre confirmé
    Expert en assurance
    Inscrit en
    Août 2012
    Messages
    55
    Détails du profil
    Informations professionnelles :
    Activité : Expert en assurance
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2012
    Messages : 55
    Par défaut
    Merci beaucoup !

    Tu est un Génie

    Bonne continuation à tous et à bientôt,
    En espérant pouvoir à mon tour répondre aux questions des autres !

    Cordialment.

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Re.
    Content que ça convienne. .
    A+

  5. #5
    Membre confirmé
    Expert en assurance
    Inscrit en
    Août 2012
    Messages
    55
    Détails du profil
    Informations professionnelles :
    Activité : Expert en assurance
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2012
    Messages : 55
    Par défaut
    Bonjour,

    je me permet de réup le poste pour une question qui c'est posée à moi,

    Est il possible de rajouter une ligne de commande à la macro pour supprimer les espaces qui se rajoute après avoir coller les élements dans la cellule ??

    Corfialement.
    Yamiral

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonjour,

    Pour supprimer les retours à la ligne en fin de la chaîne copiée :

    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 CollageParValeur()
     
        Dim obj As New MSForms.DataObject
        obj.GetFromClipboard
        Dim s As String
        s = obj.GetText()
        Dim strlen As Long
        strlen = Len(s)
        If strlen > 1 Then
            If Mid(s, strlen - 1) = (Chr(13) & Chr(10)) Then
                s = Left(s, strlen - 2)
            End If
        End If
        ActiveCell.Value = Trim(s)
        Set obj = Nothing
     
    End Sub

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

Discussions similaires

  1. [VBA-E] Encore un problème avec les limites de RANGE
    Par durdesfois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/07/2007, 19h56
  2. Les limites de wget
    Par djibril dans le forum Applications et environnements graphiques
    Réponses: 10
    Dernier message: 23/02/2006, 11h20
  3. Les limites d'ext3
    Par GLDavid dans le forum Administration système
    Réponses: 5
    Dernier message: 05/12/2005, 11h32
  4. Réponses: 2
    Dernier message: 13/10/2005, 19h04
  5. Quelles sont les limites de INTERBASE 7.5 ?
    Par lio33 dans le forum InterBase
    Réponses: 1
    Dernier message: 21/07/2005, 12h54

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