Selctionner des lignes selon un critère et les copier

  • Initiateur de la discussion Initiateur de la discussion Himir
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Himir

XLDnaute Nouveau
Bonjour tout le monde,

J'ai un autre soucis avec excel... j'ai une série de valeur rangée sur plusieurs colonnes et je dois, suivant un critère, sélectionner par exemple une ligne toutes les 3 lignes, toutes les 6 lignes, 8 lignes etc... et les copier sur un autre classeur excel.
Le critère de sélection vous l'aurez compris est le nombre de saut de ligne entre chaque séléction.
J'avais dans l'idée d'utiliser une cellule où je rentrerai le critère (par exemple 6) et faire un filtre qui sélectionne en fonction du critère mais je ne sais pas comment m'y prendre...


Et pour aller encore plus loin, serait-il possible par la même occasion de choisir la ligne où commence cette séléction? par exemple commencer à séléctionner une ligne sur 6 à partir de la ligne 350.

Très cordialement,

Himir.
 
Re : Selctionner des lignes selon un critère et les copier

Bonjour,

Avec un exemple en pièce jointe reprenant le tableau de départ ainsi que les résultats à obtenir ce sera bien plus facile pour te proposer une solution adaptée à ton fichier.
 
Re : Selctionner des lignes selon un critère et les copier

Re,

Sheet2!A9 :
Code:
=INDIRECT("Sheet1!"&CAR(COLONNE()+65)&64+(LIGNE()-9)*$B$1)
formule à copier vers le bas et vers la droite.

Il y a aussi moyen de le faire par la fonction DECALER
Code:
=DECALER(INDIRECT("Sheet1!B"&$B$2);(LIGNE()-9)*$B$1;COLONNE()-1)
toujours à copier vers le bas et vers la droite.

Dans les deux cas, ne pas oublier de mettre les cellules au bon format (horaire et standard).
 
Re : Selctionner des lignes selon un critère et les copier

Merci beaucoup!

J'aurai une autre question sur le même fichier, étant donné que le nombre de ligne à sélectionner est variable, je vais fatalement me retrouver avec des "0" dans certaines cellules cases (car j'étire la formule jusqu'à la ligne 1500 car le nombre de ligne peut atteindre 1500, et tout doit être automatique dans mon fichier). Comment faire pour tester la case à copier AVANT qu'elle ne le soit. J'ai bien penser à quelque chose du type:

SI(celluleàcopier="";"";celluleàcopier)

Mais ce n'est pas possible car la cellule à copier n'apparaîtra pas toujours sur la même cellule d'arrivée...
 
Re : Selctionner des lignes selon un critère et les copier

Bonjour,

J'ai trouvé c'était tout bête finalement.
Après plusieurs essais je me rend compte qu'il faudrait également que je puisse arrêter la séléction à partir d'une ligne choisie (exactement comme pour commencer la séléction)...
Mais je n'arrive pas à modifier correctement la seconde formule de hoerwind, quelqu'un peut-il m'aider?

Cordialement.
 
Re : Selctionner des lignes selon un critère et les copier

Bonjour,

Il est plus facile, et moins lourd, de ne pas afficher les 0 que de compliquer la formule pour renvoyer "" lorsque la cellule à copier est vide.

Ajoutes ;; (deux points-virgules) derrière le format des cellules copiées.
Exemple : hh:mm:ss;; ou Standard;;
 
Re : Selctionner des lignes selon un critère et les copier

oui je suis d'accord, mais je ne peux pas faire autrement.
Si tu as un peu de temps pour m'expliquer, j'aurai aimé savoir comment modifier la formule afin de pouvoir arrêter la sélection à une certaine ligne (exactement comme le choix de début de séléction sur la seconde ligne du fichier). J'ai essayé encore ce week-end et pas moyen...

Cordialement.
 
Re : Selctionner des lignes selon un critère et les copier

Je suis désolé mais je n'ai pas bien compris ce que tu as fais, peut-être me suis-je mal exprimé et je m'en excuse. Je joins un nouveau fichier, peut-être serai-je plus clair avec un exemple.

Par contre je veux bien que tu m'expliques cette ligne, si ça ne te dérange pas:

=DECALER(INDIRECT("Sheet1!B"&$B$2);(LIGNE()-9)*$B$1;COLONNE()-1)

si j'ai bien compris la fonction INDIRECT permet de changer de cellule de sélection sans changer la formule c'est ça?
DECALER sert à choisir une plage de donnée non?

Merci pour tout.
 

Pièces jointes

Re : Selctionner des lignes selon un critère et les copier

Bonjour,

Tu t'es très bien exprimé, j'avais mal compris la question.
Comme tu désirais ne pas afficher les 0, j'ai interprété la question comme un souhait d'arrêter la formule lorsqu'il n'y avait plus de données en Sheet1.

En réalité tu désires arrêter l'extraction à une ligne prédéfinie, la 35 pour ton dernier exemple.
Mais tu ne précises pas la feuille de la ligne 35, est-ce celle de la Sheet1 ou de Données ?

Quant à l'explication des fonctions DECALER et INDIRECT, consulte l'aide MS (touche clavier F1).
Si tu rencontres encore des problèmes de compréhension, c'est avec plaisir que j'essaierai de t'expliquer plus en détail.
 
Re : Selctionner des lignes selon un critère et les copier

Bonjour,
Mais tu ne précises pas la feuille de la ligne 35, est-ce celle de la Sheet1 ou de Données ?
QUOTE]

Ha oui pardon, ça concerne la feuille Sheet1 comme tout le reste de la sélection.

Tu as raison, je vais consulter l'aide. J'ai cherché comment modifier moi-même la formule mais je dois pas avoir compris la synthaxe de:

Code:
=DECALER(INDIRECT[B][COLOR="DeepSkyBlue"]("Sheet1!B"&$B$2[/COLOR][/B]);(LIGNE()-9)*$B$1;COLONNE()-1)

j'ai essayé de modifier ce qui est en bleu mais sans succès, soit je n'ai rien, soit j'ai #valeur.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
349
Réponses
22
Affichages
1 K
Retour