comparaison de tableaux

  • Initiateur de la discussion doriane
  • Date de début
D

doriane

Guest
bonjour à toutes et à tous,

je dois procéder à une comparaison de 2 tableaux quasi-similaire et se trouvant sur 2 feuilles différentes.

Ces tableaux représentent la cotisation à un sport proposé par l'université à ses élèves. Ces cotisations sont échelonnées dans le temps.

le nouveau tableau comparatif que je veux obtenir doit mettre en évidence en fonction des dates de paiement les différences des cotisations engendrées par une comptabilité tenue par 2 personnes différentes (d'où 2 tableaux).
Ce tableau doit avoir la même présentation que le tableau se trouvant en feuille 2 ("tab2").

je crois pour cela que je dois utiliser la fonction "recherche V".
j'ai commencé à faire quelque chose mais ça marche pô!
aussi, je pense qu'il est plus facile de réaliser la comparaison à partir de la concaténation de 2 colonnes comme je l'ai fait. Qu'en pensez-vous?

aidez-moi SVP!!!

Grand merci d'avance.

Doriane
 

Pièces jointes

  • essai.xls
    20 KB · Affichages: 65
  • essai.xls
    20 KB · Affichages: 69
  • essai.xls
    20 KB · Affichages: 69
M

Monique

Guest
Bonsoir,

Où sont les formules qui posent problème ? Je n'en vois aucune.

Cellules ayant des formules matricielles :
- Colonne U des 2 premières feuilles
- Colonne I et de K à V de la feuille comparative.

On distingue les formules matricielles des autres par les accolades qui les entourent.
Il ne faut pas saisir ces accolades.
Elles se mettent automatiquement quand on valide en appuyant simultanément sur ctrl + maj + entrée.
Tu appuies sur les 3 touches en même temps, tu ne tapes pas le signe +
Quand tu valides, tu dois avoir ton curseur dans la barre de formule, n'importe où à droite, à gauche, au milieu de la formule, mais dans la barre de formules.
Tu peux faire un essai avec une formule courte, du genre =2+2
Tu valides par les 3 touches et ça te donne {=2+2}
 
D

Doriane

Guest
bonjour Monique,

j'espère acquérir avec le temps votre niveau... :)

effectivement pour les cellules mentionnées précedemment ça marche bien!
le problème était que je ne faisais pas très bien la différence entre une formule matricielle et une formule normale...

j'ai (encore!) un petit pb (tu vas finir par me haïr!):


dans un nouveau tableau que j'ai créé, ma cellule I4 contient la formule suivante : =DATE(ANNEE(G5);MOIS(G5);1) et affiche févr-03 car en G5 j'avais 15/02/2003.

dans le tableau 1, tu utilises en J4 la formule suivante : =FIN.MOIS(I4;0)+1.

j'ai essayé de reproduire cette formule mais ça n'a pas fonctionné. la mention #NOM? s'affiche quand je valide par entrée... à quoi cela est-il dû? erreur de validation?

pourrais-tu me dire comment tu as fait stp?

merci et désolée du dérangement...

Doriane
 
M

Monique

Guest
Bonjour,

A chaque fois, j'oublie de prévenir...

Pour avoir la fonction FIN.MOIS(), il faut cocher une option.
Barre de menus - Outils - Macros complémentaires
Et tu coches "Utilitaire d'analyse"
Ensuite, tu pourras utiliser la fonction FIN.MOIS(), NB.JOURS.OUVRES() et plein d'autres.

La formule DATE(ANNEE(A1);MOIS(A1)+1;1) donne la même résultat que FIN.MOIS(A1;0)+1
=FIN.MOIS(A1;0) donne le dernier jour du mois en cours.
=FIN.MOIS(A1;1) donne le dernier jour du mois suivant.

Elle peut être utilisée pour savoir si une année est bissextile.
=FIN.MOIS(DATE(ANNEE(A1);2;1);0) ou bien =FIN.MOIS(DATE(2003;2;1);0)
Mais celle-ci donne le même résultat =DATE(ANNEE(A1);3;1)-1
 
D

Doriane

Guest
oki merci bien Monique!!!

je comprends mieux maintenant: aussitôt dit, aussitôt cochée!

est ce que je peux encore t'embêter un peu avec mes tableaux?


les dates indiquées pour la cotisation concerne l'année 2003 et je dois glisser l'année 2004 mais ça me pose un problème...

je te laisse voir le tableau 1 du fichier joint et tu vas mieux comprendre!


merci encore pour ton aide!

Doriane
 

Pièces jointes

  • essai_doriane04.zip
    16.4 KB · Affichages: 25
M

Monique

Guest
Re-bonjour,

En I5 :
=SI(ET(ANNEE($F5)=ANNEE(I$4);MOIS($F5)=MOIS(I$4));$G5;"")
Tu copies cette cellule I5 sur l'ensemble du tableau, de I5 à T34

Pour créer de nouvelles colonnes pour janvier et février 2004 :
Sur la ligne 4, pour avoir "janv-04" :
=FIN.MOIS(T4;0)+1 que tu copies vers la droite pour avoir les 12 mois de 2004
T4 étant décembre 2003
Et tu recopies la formule donnée plus haut dans toutes les cellules de ce nouveau tableau.

Tu vas devoir donner un nom à ces nouvelles colonnes, du genre jan_aa, fev_aa, jan_bb, fev_bb
Et tu utilises cette formule de la cellule V5,
=SOMME(SI(cle_b=$B5;dec_b))-SOMME(SI(cle_a=$B5;dec_a))
que tu modifies en :
=SOMME(SI(cle_b=$B5;jan_bb))-SOMME(SI(cle_a=$B5;jan_aa))
 
D

Doriane

Guest
coucou Monique

je viens encore te solliciter si tu veux bien!!!


et bien, j'ai un problème avec les formules de la dernière colonne ! Elles sont trop volumineuses.
En effet, ça marche bien (même très bien) quand on a une 100n de lignes mais ça fait planter excel quand j'essaie de les appliquer à 10 000 lignes...!

aurais-tu une solution?

Merci d'avance.

Doriane
 
M

Monique

Guest
Bonjour,

Pour simplifier, je ne vois pas trop, sauf :

Ne pas continuer une nouvelle année à droite du tableau de 2003, faire 1 classeur par année.

La feuille de comparaison n'a pas besoin de toutes les colonnes "Nom", "Ville", "N° étudiant", "Code sport", "Cursus"
Une ou 2 de ces colonnes suffit, je pense.
Les formules de cette feuille ne se servent que des colonnes A et B

Est-ce que le "Global tab2 - tab1" ne suffit pas ?

Sinon, un truc pour alléger ton fichier :
quand un mois est terminé, les comparaisons finies, etc
Copier les cellules dont les formules ne serviront plus et coller les valeurs.
(Copier - Barre de menus - Edition - Collage spécial - Valeurs)
De cette façon, les formules sont effacées mais le résultat reste.
 

Discussions similaires

Statistiques des forums

Discussions
314 647
Messages
2 111 531
Membres
111 191
dernier inscrit
Assjmka