1. Ce site utilise des "témoins de connexion" (cookies) conformes aux textes de l'Union Européenne. Continuer à naviguer sur nos pages vaut acceptation de notre règlement en la matière. En savoir plus.

XL 2013 Copie Colle Condition et supprime VBA

Discussion dans 'Forum Excel' démarrée par BENAM69, 7 Novembre 2018 à 17:20.

  1. BENAM69

    BENAM69 XLDnaute Nouveau

    Inscrit depuis le :
    16 Octobre 2018
    Messages :
    44
    "J'aime" reçus :
    0
    Bonjour à tous,

    Je tiens à préciser que je suis vraiment novice au niveau de la programmation VBA.
    Je suis en train de buter sur un problème.
    Je voudrais copier coller des cellules d'un onglet vers un autre.
    J'ai commencé à le faire mais il me copie colle toutes les cellules existantes dans l'autre onglet même le titre des autres tableaux du même onglet. Derrière cette première étape j'ai besoin d'ajouter d'autres conditions.

    Voici ce que je recherche :
    Il y a 2 tableaux sur l'onglet numéro 1 (Donnée)

    Dans le premier onglet : On démarre la vérification à partir de la ligne 4.
    Sur la ligne 4, en colonne I (Date de réception), si la cellule est vide alors il ne fait rien. Si la cellule est différente de vide alors il va copier coller sur le deuxième onglet les informations de la même ligne vérifiée (seulement les informations suivantes :
    COMPOSANTS Colonne 1 / N°DESSIN Colonne 2 / DIMENSION Colonne 3 / N°DESIGNATION TYPE DE GRAPHITE / MATIÈRE Colonne 4 / DATE DE RÉCEPTION Colonne 9 / QUANTITÉ RECUE Colonne 10 )
    Une fois qu'il a fini, il passe à la ligne suivante jusqu'à la fin du premier tableau. Il colle sur le deuxième onglet à la suite. Une fois qu'il a fini avec le premier tableau il passe au deuxième et effectue la même chose.

    Une fois le deuxième onglet traité, il passe au troisième. C'est exactement la même opération sauf qu'il vérifie en colonne K (Date de sortie), si la cellule est vide alors il ne fait rien et si différente de vide il colle les informations COMPOSANTS Colonne 1 / N°DESSIN Colonne 2 / DIMENSION Colonne 3 / N°DESIGNATION TYPE DE GRAPHITE / MATIÈRE Colonne 4 / DATE DE SORTIE Colonne 11 / QUANTITÉ SORTIE Colonne 12 ) sur le troisième onglet.

    Une fois que le copier coller sur les deux onglets est fini.
    Il fait un simple calcul : En colonne G (NOMBRE DE PIÈCE EN STOCK) = Colonne G + Colonne J - Colonne L
    et Colonne M = Nombre en Colonne M + Nombre en colonne L.

    Et pour finir, une fois cette étape de calcul est finie, il va supprimer les données inscrites sur l'onglet 1, seulement les 4 données suivantes :
    DATE DE RÉCEPTION Colonne 9 / QUANTITÉ RECUE Colonne 10 / DATE DE SORTIE Colonne 11 / QUANTITÉ SORTIE Colonne 12

    J'espère que mes explications ont été claires et que quelqu'un pourrait m'aider sur ce sujet.

    Merci du fond du coeur pour ceux qui essayeront de m'aider sur ce sujet.

    Je vous mets en pièce jointe le fichier avec des données factices.

    Merci encore pour votre aide et espère avoir un retour sur ce sujet ^^

    BENAM
     

    Pièces jointes:

  2. Chargement...

    Discussions similaires - Copie Colle Condition Forum Date
    Macro Copier/Coller dans autre fichier excel sous condition Forum Excel 29 Octobre 2018
    XL 2013 VBA COPIER COLLER SOUS CONDITION Forum Excel 18 Octobre 2018
    Copier/coller avec une condition Forum Excel 11 Septembre 2018
    XL 2010 Macro Copier Coller Valeur avec conditions suite Forum Excel 12 Juillet 2018
    XL 2016 VBA Copier Coller avec Condition Forum Excel 30 Juin 2018

  3. herve62

    herve62 XLDnaute Barbatruc

    Inscrit depuis le :
    14 Octobre 2005
    Messages :
    2075
    "J'aime" reçus :
    54
    Sexe :
    Masculin
    Habite à:
    Arques ( ville du Cristal) 62
    Utilise:
    Excel 2010 (PC)
    Bonsoir
    Un peu long mais très bien expliqué !, j'ai donc suivi à la lettre tes instructions de réalisations
    de là une méthode très basique facilement compréhensible par les "novices"
    Avant de tester ce fichier enregistre, fait une copie et met de côté par sécurité quoique ce sont des données bidons mais il y a effacement des données
    et le résultat est unique bien sûr
    A toi de juger

    PS :attention à la nomination de tes onglets , "matière" = 1 fois avec è l'autre avec e c'est important dans le VBA
     

    Pièces jointes:

    BENAM69 aime votre message.
  4. BENAM69

    BENAM69 XLDnaute Nouveau

    Inscrit depuis le :
    16 Octobre 2018
    Messages :
    44
    "J'aime" reçus :
    0
    Salut à toi Herve62,

    Franchement je ne sais pas quoi répondre, c'est vraiment mais vraiment parfait !!!!
    Je n'arrive pas à croire qu'en seulement quelques lignes de codes, tu as réussi à réaliser ce que j'essayais de faire depuis des heures et des heures !!!!

    Je tiens sincèrement à te remercier du fond du coeur wwhhhhaaaaaooooo !!!
    C'est vraiment cool !!!!!

    Je voulais également savoir comment on fait pour déplacer ton bouton de Lance Traitement sur un autre endroit du premier onglet et si possible changer le nom du bouton ?

    Est-ce que c'est également possible de faire un copier coller de ton code et adapter ce dernier si un troisième tableau est à créer mais toujours dans l'onglet numéro 1 (Donnée) ? Je n'ai pour le moment mis que 2 tableaux sur le premier onglet mais il se peut qu'un troisième tableau est à intégrer mais toujours avec le même type de tableau et avec les mêmes colonnes de vérification ? Si c'est le cas je serai très ravi ^^

    Est-ce également difficile de coder pour une alerte ? C'est a dire si à la fin de tout ce que le code que tu m'as fourni est réalisé, si à la colonne H, la quantité du stock mini est inférieure à la colonne G (Nombre de pièce en stock), il m'encadre les cellules ayant un stock mini inférieur au nombre de pièce en stock ? Juste pour alerter qu'il faut commander à nouveau. Si le nombre de pièce en stock est toujours inférieur au stock mini alors il reste toujours en encadré rouge ? Et une fois que le nombre de pièce en stock est supérieur alors l'encadré en rouge disparaît ?

    En tout cas merci merci beaucoup de ton aide ^^

    BENAM
     
    Dernière édition: 7 Novembre 2018 à 23:14
  5. herve62

    herve62 XLDnaute Barbatruc

    Inscrit depuis le :
    14 Octobre 2005
    Messages :
    2075
    "J'aime" reçus :
    54
    Sexe :
    Masculin
    Habite à:
    Arques ( ville du Cristal) 62
    Utilise:
    Excel 2010 (PC)
    Re
    Bien que cela te plaise , mais bon c'est ce que tu as demandé
    Normalement ici on ne donne pas du tout cuit , mais là en peu de temps c'était fait
    Pour la suite , novice ne veux pas dire que tu ne comprends pas !! donc regarde un peu la structure du code
    et tu vas vite remarquer ce qu'il faut ajouter dans chaque Sub pour un 3éme tableau puisque j'ai bien indiqué
    chaque section : 1er Tableau & 2eme tableau .... à toi de bosser un peu
    enfin , pour l'alerte pas besoin de code ... les MFC sont là pour ça !! c'est très courant en gestion de stock !!
    Fond de cellule en orange = ça se gâte !!! , en rouge = Alerte !! commande
    A+
     
  6. BENAM69

    BENAM69 XLDnaute Nouveau

    Inscrit depuis le :
    16 Octobre 2018
    Messages :
    44
    "J'aime" reçus :
    0
    Re,

    C'est compris ^^ en tout cas merci encore pour ton aide !!!! Tu es génial !!!!
    A+
     
  7. herve62

    herve62 XLDnaute Barbatruc

    Inscrit depuis le :
    14 Octobre 2005
    Messages :
    2075
    "J'aime" reçus :
    54
    Sexe :
    Masculin
    Habite à:
    Arques ( ville du Cristal) 62
    Utilise:
    Excel 2010 (PC)
    SAlut
    Un oubli ! tu vas dans l'onglet "Developpeur" du menu excel ( en haut ) tu te mets en mode création puis tu cliques droit sur ton bouton > menu > Objet bouton > editer , là tu modfies ; Pour déplacer , utilise la croix sur le rectangle tout simple tu le bouges
    Tu recliques sur création et tu peux exécuter
     
  8. BENAM69

    BENAM69 XLDnaute Nouveau

    Inscrit depuis le :
    16 Octobre 2018
    Messages :
    44
    "J'aime" reçus :
    0
    Merci pour ton retour ^^, c'est fait hihi.

    Est-ce normal que lorsqu'il copie colle sur les deux onglets, il me laisse des espaces entre les lignes. J'ai fait un test avec une seule ligne de remplie complètement sur le 1er et 2eme tableau. Quand je lance le traitement, il ne copie colle pas à la suite de telle sorte qu'il n'y ait pas d'espace.

    upload_2018-11-8_14-55-2.png

    C'est possible d'ajouter une fonction de collage spéciale pour qu'il colle a la suite ?
     
  9. herve62

    herve62 XLDnaute Barbatruc

    Inscrit depuis le :
    14 Octobre 2005
    Messages :
    2075
    "J'aime" reçus :
    54
    Sexe :
    Masculin
    Habite à:
    Arques ( ville du Cristal) 62
    Utilise:
    Excel 2010 (PC)
    Bonsoir
    Ne connaissant ton usage je me suis basé sur ton exemple
    Mais rien de grave dans les boucles des 2 sub ( Mat_In et Mat_OUT):
    Code (Text):
    For x = 4 To .Range("a4").End(xlDown).Row
    For x = 30 To .Range("a30").End(xlDown).Row
    tu remplaces a4 par a3 et a30 par a29
    exemple de resultat pour 2 lignes tab 1, et 5 pour tab2 joint
     

    Pièces jointes:

    • EM1.jpg
      EM1.jpg
      Taille du fichier:
      43.6 Ko
      Affichages:
      6
    • EM2.jpg
      EM2.jpg
      Taille du fichier:
      43.2 Ko
      Affichages:
      5
  10. BENAM69

    BENAM69 XLDnaute Nouveau

    Inscrit depuis le :
    16 Octobre 2018
    Messages :
    44
    "J'aime" reçus :
    0
    Re,

    Et bien enfaite ce que tu m'as fourni dans le premier fichier c'est déjà ce que tu avais marqué.

    J'ai finalement opté par une autre astuce, j'ai ajouté une boucle for avec suppression des lignes vides dans les deux onglets ^^.

    En tout cas je te remercie encore une fois de t'être penché sur le sujet ^^
     

Partager cette page