Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1599 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Macro copier tableau avec plusieurs critères

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Macro copier tableau avec plusieurs critères

n°2261145
sotto16
Posté le 25-06-2015 à 14:13:11  profilanswer
 

Bonjour à tous,
 
Je vous explique mon problème :
J'ai un tableau dans un onglet "Questions". J'aimerais copier, à partir d'une macro, automatiquement, ce tableau dans un onglet "Questionnaire" en fonction de plusieurs critères :
- colonne B = Principal / Detailed
- Colonne C = Key / Others
- Colonne M = Y / N
 
J'arrive à copier mon tableau lorsqu'il n'y a qu'un seul critère (fichier ci-joint), mais je n'arrive pas à adapter mon code lorsque j'ai besoin de prendre en compte plusieurs critères.
 
fichier : https://www.dropbox.com/s/46sdza1qd [...] e.xls?dl=0  
 
Merci beaucoup pour votre aide !

mood
Publicité
Posté le 25-06-2015 à 14:13:11  profilanswer
 

n°2261147
Marc L
Posté le 25-06-2015 à 14:50:42  profilanswer
 

 
           Bonjour,
 
           utiliser les filtres ou un filtre avancé …
 

n°2261149
sotto16
Posté le 25-06-2015 à 15:00:03  profilanswer
 

Le but est de ne pas avoir à intervenir sur le tableau par les filtres et de le recopier automatiquement, avec les bons critères

n°2261164
Marc L
Posté le 25-06-2015 à 15:17:39  profilanswer
 

 
           Comme les filtres simplifient le code, sont redoutables d'efficacité et désactivables, dommage de s'en passer !
           Sinon c'est l'usine à gaz classique : boucle pour parcourir les lignes, tests conditionnels puis copie …
 
           Conformément aux règles de ce forum, merci de poster le code entrepris via l'icône dédiée pour le baliser.
 
 

n°2261185
sotto16
Posté le 25-06-2015 à 15:54:25  profilanswer
 

Voici pour l'instant mon code, qui ne me permet que de prendre en compte un seul critère :
 

Code :
  1. Sub Bouton1064_Cliquer()
  2. Dim Lig     As Long
  3.   Dim Col     As String
  4.   Dim NbrLig  As Long
  5.   Dim NumLig  As Long
  6.  
  7.   Sheets("First" ).Activate 'feuille de destination
  8.  
  9.   Col = "M"                 ' colonne données non vides à tester'
  10.   NumLig = 6          'alors là ca doit etre le N° de la 1er ligne de données en comptant la ligne 1 = 0 .... ? '
  11.   With Sheets("Questions" )     ' feuille source'
  12.   NbrLig = .Cells(65536, Col).End(xlUp).Row
  13.   For Lig = 6 To NbrLig             'n° de la 1ere ligne de données'
  14.     If .Cells(Lig, Col).Value <> "N" Then
  15.       .Cells(Lig, Col).EntireRow.Copy
  16.       NumLig = NumLig + 1
  17.       Sheets("First" ).Cells(NumLig, 1).Insert Shift:=xlDown
  18.             'ici pour insérer ou  .Paste pour coller'
  19.     End If
  20.   Next
  21.   End With
  22. End Sub


 
J'aimerais juste savoir comment intégrer plusieurs critères, ou conditions, à ce code s'il vous plait ?

n°2261217
Marc L
Posté le 25-06-2015 à 17:28:07  profilanswer
 

 
           Soit avec une cascade de lignes de code  If … Then
 
           soit en combinant au sein de la ligne If … Then les conditions avec les opérateurs  And  /  Or  (cf aide VBA) …
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Macro copier tableau avec plusieurs critères

 

Sujets relatifs
VBA sélectionner contenus de plusieurs fichiers excelListe utilisateur AD fonction de plusieurs criteres
Ajout de variables dans un tableautableau outofBound
macro pour copier coller lignes[résolu] Modification valeur tableau bidimentionnel
Formulaire de devis en PHP sur plusieurs pages web ? 
Plus de sujets relatifs à : Macro copier tableau avec plusieurs critères


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR