Comparaison de fichier et mise à jour

JL M

XLDnaute Junior
Bonjour le forum,

Mon soucis du jour est le suivant.

Dans un classeur fichier attaché serait'il possible de faire en sorte de comparer la feuille 2 (AVSC 20051208) avec la premiere et faire en sorte que les nouvelles lignes de la feuille 2 viennent s'ajouter a la fin de la première...

Peut on envisager alors de comparer toutes les feuilles du classeur même si elles n'ont pas le même nombre de colonnes ?

La comparaison devra se faire sur toutes les colonnes car il peut y avaoir des divorces mariages et mutations.

Serait il possible également de donner pour enregistrement du fichier le nom de l'onglet qui lui même devra tenir compte du jour de la mise à jour cad exemple AVSCRP 20051208.

Merci de votre aide.

JLM
 

JL M

XLDnaute Junior
...pardon mais le fichier n'est pas passer re essaie [file name=EXEMPLE_20051208105053.zip size=39611]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/EXEMPLE_20051208105053.zip[/file]
 

Pièces jointes

  • EXEMPLE_20051208105053.zip
    38.7 KB · Affichages: 18

Hervé

XLDnaute Barbatruc
Bonjour JL M, le forum

vite fait, en réponse seulement à la premiere partie.

pour la deuxième partie comparaison multi-pages, il nous faut plus d'info sur les structures de feuilles.

J'ai pris comme comparateur la colonne 2 (matricule ?)

j'ai pas tester les résultats données, y'a trop de données. je te laisse faire ca.

salut [file name=AnnuaireEXEMPLE.zip size=47182]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/AnnuaireEXEMPLE.zip[/file]
 

Pièces jointes

  • AnnuaireEXEMPLE.zip
    46.1 KB · Affichages: 16

zesuila

XLDnaute Occasionnel
Bonjour JL M, Hervé, le forum

Je me permets de me 'fondre' dans ce post parce qu'il pourrait bien m'aide à résoudre mon problème que j'ai lancé ce matin dans ce forum ici
Lien supprimé.

En regardant ton fichier Hervé je me suis dit que je pouvais l'utiliser mais comment faire lorsque les données de 'mise à jour' sont dans un autre classeur que les données 'recapitulatives'
Encore pardon pour cet intrusion certainement illicite :whistle:

Bonne journée
 

JL M

XLDnaute Junior
Bonjour Herve, et merci.

Ta macro à l'air de fonctionner, mais la mise à jour par le seul critère IdentRH n'est pas bon.

Il faudrait que la ligne de la feuile 2 AVSC 20051208 ecrase l'éventeul doublon d'identRH exemple SALGUE a été conservé alors qu'elle à changer de nommais pas d'identRH.

En manuelle en utilisant la macro du célèbre MDF, et en ajoutant un espace devant les caractères de 'AFFECTATIONPRINCIPALE' de la 2ème feuille et en effectuant un tri par Nom prénom et affectation principale je récupère bien les bonnes lignes, ....mais ce n'est qu'un paliatif de débrouille.

Comment réaliser cette manoeuvre en VBA d'autant qu'archiver les doublons me rend également service .

@+
Jean-Louis
 

Hervé

XLDnaute Barbatruc
re jean louis, zesuila

En pièce jointe nouvellle tentative, renvoi en feuille 1

désolé pour la complexité du code, mais je sais pas faire autrement.

salut [file name=AnnuaireEXEMPLE_20051208140407.zip size=48927]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/AnnuaireEXEMPLE_20051208140407.zip[/file]

Message édité par: hervé, à: 08/12/2005 14:04
 

Pièces jointes

  • AnnuaireEXEMPLE_20051208140407.zip
    47.8 KB · Affichages: 10

JL M

XLDnaute Junior
Re ,

Hervé STP, je travaille sur ton code, je suis pré-novice, mais peux tu m'expliquer à quoi correspond, en 'Français', dans a ligne de code suivante :
ReDim tablores(1 To 4, 1 To UBound(tablo1, 1)) la partie
...1 To UBound(tablo1, 1))

La première je pense qu'elle fait référence au nombre de colonne ici 4 mais la seconde partie, fait elle reference au nombre de ligne du nouveau tableau dans la feuil1 et si oui pourqoui tablo1,1.

Encore une fois merci de l'intérêt portée à ma requête.

@+
JLM
 

Hervé

XLDnaute Barbatruc
re jean louis

oups, je t'avais oublié. :eek:

en pièce jointe la correction pour la mise à jour des affectations.

un tableau dynamique est définit par deux dimensions (enfin pour les tableaux bi-dimensionnelle, bien sur) les lignes et les colonnes.

Quand on veut boucler dessus on fait simplement : for i=1 to ubound(tablo,1)

le 1 du ...tablo,1) correspond à la premiere dimension, pour la deuxième condition on remplace simplement ce 1 par 2 (for i=1 to ubound(tablo,2), afin d'indiquer au code dans quel sens il doit travailler.

la difficulté de ce type de code, c'est de savoir justement dans quel dimension on se trouve (ligne ou colonne).

Le ubound parmet simplement de connaitre la limite supérieur du tableau (on pourrait dire la derniere ligne).

donc for i=1 to ubound(tablo,1) veut sire : de la 'ligne' 1 à la derniere 'ligne' du tableau dans le sens des lignes.

le contraire de ubound est Lbound

en espérant t'avoir aidé

salut [file name=AnnuaireEXEMPLE_20051208163922.zip size=48988]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/AnnuaireEXEMPLE_20051208163922.zip[/file]
 

Pièces jointes

  • AnnuaireEXEMPLE_20051208163922.zip
    47.8 KB · Affichages: 10

JL M

XLDnaute Junior
Re re re..

9a fonctionne bien, merci Hervé.

Mais....., je vais peut etre abusé,...même surement..., mais serait il possible d'ajouter des lignes de codes pour que :

Si changement de nom dans tablo2 alors les caracteres correspondants dans tablores apparaissent en rouge

Si Changement d'affectation idem en rouge

Si pas present dans tablo2 alors inscrire 'Arrêt / Retraite' à la place du libellé d'origine du tablo1.

@+ et merci

Jean-louis
 

Discussions similaires

Réponses
21
Affichages
949