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 :

Excel VBA listbox vers signets Word


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2021
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2021
    Messages : 27
    Par défaut Excel VBA listbox vers signets Word
    Bonjour à tous,

    je recherche un peu d'aide pour mon projet...

    J'ai réalisé (à partir de tutos et d'aide ici) un VBA qui me permet de trier et faire des recherches depuis un Google sheet, et ça fonctionne très bien.

    Voila maintenant, j'aimerai que en double cliquant sur une des lignes de la Listbox, le contenu des colonnes arrive dans un document Word dans lequel j'ai placé des signets.

    Mon problème est que ce n'est pas le contenu de la cellule qui est copié mais la cellule elle même avec sa couleur de fond, ce qui décale tout mon document(voir photo)

    Et que ce qui est copié n'est pas le contenu de la ligne sur laquelle j'ai double cliqué mais toujours la première ligne (je sais que c'est à cause du 2 dans (cells (2,"E"......) mais je ne sais pas par quoi il faut le remplacer.

    Merci d'avance

    Fabrice

    Voici le code pour le double clic:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
     
     Call CreationCalqueWord
     
    End Sub
    et le code du module :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Option Explicit
     
    Sub CreationCalqueWord()
     
    Dim wdapp As Word.Application
     
    Set wdapp = New Word.Application
     
        With wdapp
            .Visible = True
            .Activate
            .Documents.Add "C:\Users\Fabrice\Desktop\Dossier Temp VBA Pret\Test VBA avec word signets\Calque Word.dotx"
     
      Cells(2, "E").Copy
            .Selection.GoTo what:=-1, Name:="Nom"
            .Selection.Paste
     
      Cells(2, "F").Copy
            .Selection.GoTo what:=-1, Name:="Prénom"
            .Selection.Paste
     
      Cells(2, "B").Copy
            .Selection.GoTo what:=-1, Name:="DATETEST"
            .Selection.Paste
     
       Cells(2, "H").Copy
            .Selection.GoTo what:=-1, Name:="DDN"
            .Selection.Paste
     
       Cells(2, "BT").Copy
            .Selection.GoTo what:=-1, Name:="francais"
            .Selection.Paste
     
       Cells(2, "EC").Copy
            .Selection.GoTo what:=-1, Name:="math"
            .Selection.Paste
     
      Cells(2, "FR").Copy
            .Selection.GoTo what:=-1, Name:="CG"
            .Selection.Paste
     
       Cells(2, "FS").Copy
            .Selection.GoTo what:=-1, Name:="total"
            .Selection.Paste
     
       End With
     
    End Sub
    Nom : visu vba.jpg
Affichages : 450
Taille : 149,7 Ko
    Nom : visu word.jpg
Affichages : 370
Taille : 74,9 Ko

  2. #2
    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 171
    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 171
    Billets dans le blog
    53
    Par défaut
    Bonjour Fabrice,
    Si vous travaillez avec des signets, vous pouvez parfaitement copier le tableau complet.
    Voir mon billet titré VBA Excel - Transférer des données d'excel vers Word

    Le tableau est collé tel qu'il apparaît (Valeur + format) mais les cellules avec la valeur et le format nombre
    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

  3. #3
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2021
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2021
    Messages : 27
    Par défaut
    Merci Philippe,
    mais je souhaite partir de mon VBA, et sans inclure de tableau, et copier seulement le contenu des cellules concernées vers leur signet respectif dans Word
    Fabrice

  4. #4
    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 171
    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 171
    Billets dans le blog
    53
    Par défaut
    Bonjour Fabrice,
    En lisant mon billet, vous verrez comment je procède avec les cellules uniques
    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

  5. #5
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2021
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2021
    Messages : 27
    Par défaut
    Mon niveau est vraiment trop faible pour comprendre les subtilités :-(

  6. #6
    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 171
    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 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,

    Au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Cells(2, "E").Copy
            .Selection.GoTo what:=-1, Name:="Nom"
            .Selection.Paste
    Ecrivez cette ligne (en supposant que les cellules à copier sont bien dans la feuille active, sinon, il y a lieu de préciser, pour une bonne pratique, la parentalité de l'objet Range)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .ActiveDocument.Bookmarks("Nom").Range.Text = Cells(2, "E").Text
    et bien entendu, il y a lieu d'effectuer ce remplacement pour toutes les lignes traitant le Copier/Coller
    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

Discussions similaires

  1. copier excel vers signet word
    Par keranLatos dans le forum Excel
    Réponses: 3
    Dernier message: 11/06/2021, 13h09
  2. [WD-2003] Valeur excel vers signet word, chemin d'accès
    Par 8e8eClo dans le forum VBA Word
    Réponses: 2
    Dernier message: 10/08/2011, 12h53
  3. VBA Excel : Transfert listbox vers Excel
    Par Secco dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 27/04/2008, 23h33
  4. Macro Excel : infos dans un signet Word
    Par ML0808 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 13/03/2008, 18h28
  5. Export données Excel vers signets Word
    Par stephanies_1977 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/09/2007, 16h27

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