Copier lignes sous condition Excel

Résolu/Fermé
Arnaud.Bou Messages postés 5 Date d'inscription lundi 3 octobre 2011 Statut Membre Dernière intervention 3 octobre 2011 - 3 oct. 2011 à 15:33
Arnaud.Bou Messages postés 5 Date d'inscription lundi 3 octobre 2011 Statut Membre Dernière intervention 3 octobre 2011 - 3 oct. 2011 à 23:05
Bonjour,

il s'agit ici de ma première apparition. Je suis novice en ce qui concerne VBA et je me retrouve coincé. voici mon problème :

Classeur 1 feuille 1 : j'ai généré 795 nombres aléatoirement (1colonne et 795lignes);
Classeur 1 feuille 2 : j'ai un dossier de température (sous plusieurs colonnes de A à Q) et composé de 795lignes;
Classeur 1 feuille 3 : vide.

J'aimerais en feuille 3 recopier les lignes du classeur 1 feuille 2 mais dans l'ordre des nombres générés en feuille 1.

Ex :

657 : temperature1 34, temperature2 12, ...
34 : temperature1 3, temperature2 23, ...

Sauriez-vous m'aider ?

Un grand merci.



1 réponse

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
3 oct. 2011 à 15:54
Bonjour
vous voulez dire que vous voulez un cassement aléatoire selon la liste de nombre édité en feuille 1?
sans VBA dans les deux cas:
1°)
le plus simple était alors de mettre cette liste en bout de champ en feuille 2 et de trier le champ selon l'ordre de cette colonne.
2°)
sinon vous pouvez utiliser cette formule, pour l'exemple à adapter:
le champ feuille 2 complet est nommé CHAMP
la liste de nombre feuille 21 est nommé liste
tous les tableaux et la liste débutent en A1 sans titre
en A1 feuil3:
=INDEX(CHAMP;EQUIV(PETITE.VALEUR(LISTE;LIGNE();0);COLONNE()à tirer vers la droite sur la largeur du champ de A à Q et vers le bas sur 795 lignes.
pour avoir l'ordre croissant ou GRANDE.VALEUR pour l'avoir décroissant.
note:
ligne et colonne donnent le N° correspondant à la ligne ou la colonne où se trouve ma, formule.
Si ce n'est pas sur A1 ilo faut ajuster pour que la formule dans la 1° cellule en haut à gauche du champ feuil3 donne ligne()=1 et colonne ()=1
soit par exemple si on commence en B2:
ligne()-1 et colonne()-1


crdlmnt
0
Arnaud.Bou Messages postés 5 Date d'inscription lundi 3 octobre 2011 Statut Membre Dernière intervention 3 octobre 2011
3 oct. 2011 à 16:32
J'ai déjà généré en feuille 1 un classement aléatoire (ex de ma colonne A : 1,567,546,13,25,..., 795)
En feuille 2, j'ai tous mes numéros dans l'ordre(ex de ma colonne A : 1,2,3,4,5,...,795).A chaque numéro de ma feuille 2 correspond une série de température(colonne B à R).
En feuille 3 je veux retrouver ma colonne A (1,567,546,13,25,...,795) avec en colonne de B à R les infos températures. Je pense que je dois comparer colonne A feuille 1 et colonne A feuille 2 et quand je trouve la condition = True, je dois copier mon set température de ma feuille 2 en feuille 3

Ex feuille 3

A : B , .... , R

1 : 24 , ..... , 12
567 : 34 , ..... 23
0
Arnaud.Bou Messages postés 5 Date d'inscription lundi 3 octobre 2011 Statut Membre Dernière intervention 3 octobre 2011
3 oct. 2011 à 16:33
Est-ce plus clair ? Merci pour cette première réponse
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
Modifié par Vaucluse le 3/10/2011 à 16:55
est ce plus clair...

euh peut être mais pas pour moi

on va quand même essayez en supposant que vous avez en feuille 1 colonne A les mêmes nombres que en feuil2 colonne A mais classés différemment.

Alors on garde les dénominations CHAMP et LISTE proposées plus haut et on applique en feuille 3 A1 la formule:

=INDEX(CHAMP;EQUIV('Feuil1'!$A1;LISTE;0);COLONNE())

toujours en supposant que l'on commence la feuille 3 en colonne A (sinon ajuster COLONNE()

En supposant que j'ai bien compris,(ce qui reste à prouver) la feuille 3 éditera les informations de la feuille 2 selon l'ordre des N° en feuille 1 colonne A.

crdlmnt
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
3 oct. 2011 à 16:59
.... suite
ou selon ce modèle pour faire plus simple
http://www.cijoint.fr/cjlink.php?file=cj201110/cijKa2Gwc7.xls
crdlmnt
0
Arnaud.Bou Messages postés 5 Date d'inscription lundi 3 octobre 2011 Statut Membre Dernière intervention 3 octobre 2011
3 oct. 2011 à 17:09
C'est bien cela :), merci.
le champ feuille 2 complet est nommé CHAMP ---> je sélectionne de A1 à R 795 ?
la liste de nombre feuille 21 est nommé liste. Est-ce 21 ou 1 ou 2 ? Je sélectionne de A1 à A795 ?
Quand je rentre cela, il me dit sort N/A, est-ce normal ?
0