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 sur deux feuilles différentes


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2018
    Messages : 5
    Par défaut VBA sur deux feuilles différentes
    Bonjour bonjour,

    Je ne suis pas encore très rodé à VBA du coup j'ai besoin d'un peu d'aide svp

    Situation: j'ai deux feuilles Excel,la première: Nom : Capture.JPG
Affichages : 323
Taille : 90,1 Ko
    la deuxième: Nom : Capture1.JPG
Affichages : 301
Taille : 60,8 Ko
    mon code: Nom : Capture2.JPG
Affichages : 311
Taille : 94,1 Ko


    L'objectif: On arrive sur la première feuille, on clique sur les boutons des lignes voulues tout à gauche, celles ci sont directement copiées collées dans la deuxième feuille, puis on clique sur le bouton Valider toujours dans la première feuille, bouton qui va permettre de supprimer toutes les lignes vides dans la deuxième feuille.
    En gros il faut que la deuxième feuille soit propre et présentable...

    Avec mon code vous pouvez voir que j'ai réussi à copier coller les lignes dont on a cliqué sur le bouton, sauf que je ne sais pas comment coder mon bouton Valider :p

    A l'heure actuelle, les lignes qui ne sont pas sélectionnées sur la première feuille apparaissent vides sur la deuxième, du coup ce n'est pas clean ^^

    J'espère que j'ai été plutôt clair

    Merci d'avance !


    ps: ce ne sont pas les bonnes données mais ça on s'en fout !

  2. #2
    Membre confirmé
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 64
    Par défaut
    Hidihon,

    question : Tu mets un bouton sur chaque ligne car tu ne veux que quels lignes ou bien veux tu copier toutes les lignes et les coller à la dernière vide de ton deuxième fichier ?

    En tout état de cause pour que tu colles une ligne à la dernière non remplie du deuxième fichier voici la démarchre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    sheets(2).select
    'remplace le 2 par le nom de ta feuille
    sheets(2).Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteAll, Operation:= _
    xlNone, SkipBlanks:=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False
    À ta dispo si besoin est

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Problématique bien exposée.
    Je pense que tu te compliques la tache.
    Et ton code est lourd.
    Un seul bouton suffirait selon moi.
    Pour ce faire:
    Selectionner sur Excel a ligne que tu veux copier.
    L'activation du bouton effectuerait la copie de la ligne entière de ta sélection.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2018
    Messages : 5
    Par défaut
    Merci pour vos réponses rapides,

    Dans le contexte, il s'agira d'un fichier pour d'autres amis qui n'y connaissent rien à Excel, qui m'ont demandé à ce qu'ils puissent sélectionner les lignes qu'ils veulent sur la première feuille et les copier (avec un nouveau numéro de tâche du coup) dans la deuxième.

    Exemple:
    Je sélectionne les lignes 15 18 19 (1ere feuille) qui apparaissent avec les numéros 1 2 et 3 dans la deuxième feuille.

    Du coup c'est vraiment mes amis qui m'ont demandé de faire ça exactement comme ça donc j'aimerais bien faire moins compliqué mais il s'agit ici de leurs consignes :/

    Ils veulent sélectionner les bonnes lignes du premier fichier pour qu'elles apparaissent (dans le même ordre) dans le deuxième après avoir appuyé sur le bouton Valider :3

  5. #5
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Cela ne change rien.
    Tes amis sélectionnent la 1ère cellule des lignes qu'ils souhaitent voir recopiées (contigües ou non).
    La copie s'effectuera sur la ligne correspondant à chaque cellule de ta sélection..

    Cette dernière indication devrait définir ton code.

    Tu reviens si nécessaire.

  6. #6
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    D'accord.

    Tu regardes ce code
    Tu l'adaptes
    Et tu reviens pour toute question.

    Attention : à adapter

    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
    Option Explicit
     
    Private Sub Btn_lacopie_Click()
     
    Dim dest As Range
     
    With Workbooks("mercatog.xlsm").Worksheets("Toto")
        Set dest = .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
    End With
     
    Dim c As Range
     
    For Each c In Selection
            With c
                    Range(.Offset(0, 0), .Offset(0, 10)).Copy Destination:=dest
                    Application.CutCopyMode = False
                    Set dest = dest.Offset(1, 0)
            End With
    Next c
     
    Set dest = Nothing
     
    End Sub

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2018
    Messages : 5
    Par défaut
    Bonjour,

    Je viens de me replonger dans le projet et je suis en train de regarder ton code Marcel.

    J'ai bien compris qu'il fallait que je change le nom du bouton de commande mais malheureusement je ne comprends pas à partir de la ligne With Workbooks...etc

    Est ce que tu peux me décrire ce que fais ce code ligne par ligne stp de sorte à ce que je puisse l'adapter à ma situation ?

    Bien à toi (et aux autres par la même occasion !)

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

Discussions similaires

  1. Macro recherche et affichage sur deux feuilles différentes
    Par lilou89 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/08/2014, 17h48
  2. Réponses: 1
    Dernier message: 12/10/2013, 20h04
  3. Réponses: 2
    Dernier message: 21/03/2013, 18h38
  4. comparaison de cellules sur deux feuilles différentes
    Par scorpele dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/07/2008, 10h36
  5. Réponses: 6
    Dernier message: 22/05/2008, 12h34

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