Excel: Vérification original et retravaillé

Résolu/Fermé
Robocopp - 8 déc. 2009 à 13:44
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 - 15 déc. 2009 à 02:45
Bonjour,
J'ai besoin de vos lumières. Je travaille sur des fichiers adresses, et je dois les retravailler pour qu'ils soient injectés dans un logiciel postal.
Dernièrement, une erreur s'est glissée et je ne l'ai pas vue. J'ai donc essayé de faire un truc qui, je le pensais pouvait marcher, mais je n'arrive pas au résultat escompté.
Je voudrais en fait comme dans l'exemple joint faire un fichier composé de 3 feuilles.
https://www.cjoint.com/?minPZVvRLO
- Original
- Retravaillé
- Export
- Dans la première, on copie le fichier origine et on déplace les colonnes complète sans modifier leur contenu selon l'ordre dles étiquettes de la première ligne ( en rouge). La première colonne est le résultat de "concatener" CP+ville+Rs+Nom+Prénom+ad+ad+ad. C'est la carte d'identité de la ligne qui servira à la comparaison.
- Dans la seconde, on copie le fichier précédent en intercalant des colonnes vides en cas de lignes trop longues, même principe de positionnement que pour la première feuille. Avec en plus une colonne avec une formule de type =SI(ESTERREUR(RECHERCHEV(A2;Original!A3:A33;1;FAUX));"";1) qui compare le résultat de la colonne A de la feuille "Original" et sa jumelle A de "Retravaillé". Je voudrais que s'il y a une erreur, il apparaisse un 1 dans cette colonne U ( mais rien ne se passe )pour que la cellule V2 calcule la somme de la colonne U.
Je ne sais pas si je suis bien clair, ni si mon raisonnement est viable, je suis loin de maitriser la fonction "rechercheV" entre autre.

C'est pourquoi, toute aide sera la bienvenue
Merci d'avance
A voir également:

8 réponses

Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
8 déc. 2009 à 16:26
Bonjour.
"Dans la seconde, on copie le fichier précédent en intercalant des colonnes vides en cas de lignes trop longues"
Pourquoi cette hérésie ? On ne doit JAMAIS insérer des lignes ou des colonnes vides dans une base de données !
Il suffit de donner à la colonne A le format de cellule "Renvoyer à la ligne automatiquement".
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
8 déc. 2009 à 23:17
Re-bonjour.
Je reviens à ton fichier, après un premier coup d'oeil superficiel et une bonne sieste ...
Et là, deux autres anomalies évidentes :
1) En augmentant la largeur de la colonne C de la feuille "Original", on constate que la colonne D est vide ! Si c'est définitif, il faut la supprimer ; sinon, tu aurais dû mettre un exemple pour le test.
De même si les colonnes A, B et M sont vides, il faut les supprimer !
2) Il y a deux lignes de titre : La ligne 1, en rouge, et une ligne 2 dont on ne voit pas l'utilité ... Tu devrais t'arranger pour n'en avoir qu'une seule.
3) En C6 tu as une formule de concaténation (avec G6 saisie 2 fois) assez bizarre :
=CONCATENER(N6;"";O6;"";F6;"";G6;G6;"";J6;"";K6;"";L6)
affichant 03000MOULINSNom 4Pren 4Pren 4Ad4Adr4Adre 4
qu'il fallait écrire
=CONCATENER(N6;" ";O6;" ";F6;" ";G6;" ";J6;" ";K6;" ";L6) si tu voulais séparer les éléments
affichant 03000 MOULINS Nom 4 Pren 4 Ad4 Adr4 Adre 4
et qu'il te suffisait d'écrire
=CONCATENER(N6;O6;F6;G6;J6;K6;L6) si tu voulais les coller
affichant 03000MOULINSNom 4Pren 4Ad4Adr4Adre 4
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
9 déc. 2009 à 00:03
J'ignore ce qui se passe, mais depuis un bon moment mes éditions pour correction de ce message ne sont pas prises en compte par CCM (ou par Internet, ou par Dieu sait quoi). C'est pourquoi je reprends le post 2, volontairement.

* 1) En augmentant la largeur de la colonne C de la feuille "Original", on constate que la colonne D est vide ! Si c'est définitif, il faut la supprimer ; sinon, tu aurais dû mettre un exemple pour le test.
De même si les colonnes A, B et M sont vides, il faut les supprimer ! JAMAIS de ligne ou de colonne vide dans une base de données !

* 2) Il y a deux lignes de titre : La ligne 1, en rouge, et une ligne 2 dont on ne voit pas l'utilité ... Tu devrais t'arranger pour n'en avoir qu'une seule. La seconde risque de créer des conflits quant tu feras un tri ou un filtre.

* 3) En C6 tu as une formule de concaténation (avec G6 saisie 2 fois) assez bizarre :
=CONCATENER(N6;"";O6;"";F6;"";G6;G6;"";J6;"";K6;"";L6)
affichant 03000MOULINSNom 4Pren 4Pren 4Ad4Adr4Adre 4
qu'il te suffisait d'écrire
=CONCATENER(N6;O6;F6;G6;J6;K6;L6) pour afficher 03000MOULINSNom 4Pren 4Ad4Adr4Adre 4
et qu'il fallait écrire
=CONCATENER(N6;" ";O6;" ";F6;" ";G6;" ";J6;" ";K6;" ";L6) si tu voulais séparer les éléments
et afficher 03000 MOULINS Nom 4 Pren 4 Ad4 Adr4 Adre 4

OK ?
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
9 déc. 2009 à 01:41
0
Bonjour Raymond,
Merci pour tes conseils avisés et rapides.
Je pense qu'en fait, j'ai mal cerné mon problème, et surtout que je me suis mal que je me suis mal expliqué en me perdant dans des conjectures fumeuses.
Ce que je cherche, c'est de créer un tableau "Passe partout" qui me permette
- D'avoir toujours la même présentation avec les colonnes RS, Civ, Nom............toujours dans le même ordre quel que soit l'ordre dans les fichiers que je reçois( tu as beau expliquer au gens ce que tu veux, ils n'en font qu'à leur tête).
- la feuille "Original" ne servant qu'à déplacer les colonnes des fichiers reçus aux endroits voulus et à créer une "empreinte digitale" propre à chaque ligne( En colonne A1, je crois que je n'ai pas le choix ) cette empreinte est le concaténage des données importantes. À ce stade, on ne touche pas à quoi quelque valeur que ce soit d'autre qu'à l'ordre des colonnes.
- La Feuille "Retravaillé" est la feuille dans laquelle on intervient pour traiter le fichier comme on en a envie( concaténage CP-Ville si besoin, tri). La poste impose 38 caractères par ligne adresse, c'est pourquoi j'avais laissé des colonnes vides, sinon, quant tu utilises Données-Convertir-Largeur fixe- et que tu sélectionne la largeur, si tu n'as pas prévu une colonne vide, les 38 caractères sont virés. Mais, suivant ton conseil, je les ai enlevé, et je traiterai le problème dans la feuille "Export", en dernier ressort.
- Le rôle principal de la feuille "Retravaillé" est de vérifier que les données de chaque ligne soient identiques à celles d'origine dans la première feuille, malgré le tri ou autre, ou mauvaise manipulation. Pour cela, je voudrais que dans une colonne "Vérification des erreurs", apparaisse un 1 à chaque non conformité de la ligne ( qui sera dans un fond rouge pour la rendre plus visible).
- Je pense que pour cela, il faut que je crée une colonne identique à "Original A1", mais je ne sais pas si je peux la mettre à la fin du tableau pour plus de facilités. Cette colonne servant de référence à "Vérification des erreurs" contenant une formule du style "=Si(ESTERREUR(RECHERCHEV........."que je ne maîtrise pas du tout*, et en sachant que le nombre de lignes à vérifier sont plus ou moins longues selon les fichiers à traiter.
Pour tout dire, si ce genre de tableau peut voir le jour, je pense que ça va pouvoir m'aider. En effet, je travaille dans un CAT, et je suis persuadé qu'avec son aide, je pourrais permettre à un ou deux ouvriers de mon atelier à venir m'aider, et à les faire progresser malgré leur manque de confiance en eux. Pour cela, il faut que l'outil soit bien sécurisé, car les échecs peuvent être dramatiques.
*Je te joins le tableau modifié j'ai laissé les colonnes de fin dans la 2ème feuille, mais ça ne marche pas, c'est pourquoi un formule s'impose.
J'espère ne pas trop abuser de toi.
Cordialement.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
14 déc. 2009 à 01:35
"*Je te joins le tableau modifié"
ben non : Tu as oublié de de coller le lien généré !
0
Bonjour Raymond.
Désolé pour l'oubli.
Depuis hier, je me suis repenché sur le problème et j'ai trouvé quelque chose qui, je pense résoudra mon souci, ce coup-ci, je te joins ce que j'ai fait pour te le soumettre car je sais que tu es un expert d'Excel.
https://www.cjoint.com/?moutEtmpGK
Si tu veux bien, donne moi ton avis, tu verras, dans la feuille "retravaillé", il y a la même colonne en début que dans "original", puis colonne M, c'est là qu'il y a la fameuse formule que j'ai trouvée dans un ancien post et qui doit afficher 1 s'il y a un différence entre les 2 colonnes A de "original" et "retravaillé". La colonne N donne la somme de M pour connaître le nombre total d'erreurs. Ce qui est étonnant c'est que ça à l'air de marcher.
Pour l'instant, je m'occupe pas de la feuille "Export".
Si tu me valides le truc, je pense que je vais pouvoir faire avancer mon projet.
Tu aurais fait comme ça toi? Ca m'intéresse de le savoir.
Au fait, de temps en temps, il y a des petits coins verts qui apparaissent en haut à gauche des cellules, je sais que cela peut signaler que les cellules sont au format texte, mais j'ai déjà trouvé ça avec des cellules qui n'était pas en format texte, qu'est-ce que ça peut signifier, peut-on enlever ces marques.
Bon, je ne vais pas abuser plus longtemps.
Merci pour ta patience.
Bien cordialement.
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
15 déc. 2009 à 01:09
Bonjour Robocopp.

1) En effet, ta formule en M3 compare le contenu de Retravaillé!A3 et de Original!A3
Quand tu la recopieras en M4 fais attention, car Original!A3:A8 deviendra Original!A4:A9
Il faut penser à "fixer" cette zone en écrivant Original!$A$3:$A$8
ou mieux, donne à Original!A3:A8 le nom "plage" et écris ta formule en M3
=SI(ESTERREUR(RECHERCHEV(A3;plage;1;FAUX));1;" ")

2) Le petit coin vert dans une cellule signifie "cette formule n'est pas identique aux formules des cellules voisines ; êtes-vous sûr qu'il n'y a pas d'erreur ?".
Plus précisément, quand tu sélectionnes une telle cellule s'affiche un losange d'avertissement ; en plaçant ton pointeur au-dessus de ce pictogramme tu peux lire le message "La formule de cette cellule diffère des formules de cette zone de la feuille de calcul".
En cliquant dessus tu as le choix entre plusieurs options, dont la quatrième est [Ignorer l'erreur] qui permet de supprimer ce coin vert.
Remarques
► la présence de ces coins verts, comme les coins rouges qui s'affichent à droite de la cellule quand elle contient un commentaire, ne doit pas te perturber ; ils ne sortent pas à l'impression ...
► je te recommande la lecture de l'Aide d'Excel, à la rubrique "à propos de la correction des formules", que tu obtiendras en tapant "correction formule" dans la fenêtre Rechercher.

J'espère avoir répondu à tes questions.
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
15 déc. 2009 à 02:35
Re-bonjour.

Au risque de paraître têtu et obsédé, j'insiste sur les lignes et les colonnes vides dans les bases de données : elles sont non seulement inutiles, mais souvent pénalisantes et sources d'erreurs.
Pourquoi éprouves-tu le besoin de fusionner les cellules A1 et A2, B1 et B2 et ainsi de suite jusqu'à L1 et L2 ?
Alors qu'il te suffit d'augmenter la hauteur de la ligne 1 et de mettre le format "centrer verticalement" pour obtenir le même résultat visuel !
Quant à la feuille Export, tu utilises 4 lignes pour n'en renseigner qu'une ! Plus la ligne 5 qui ne sert absolument à rien. Regarde ce fichier : https://www.cjoint.com/?mpceaqqLQ4

Pour apaiser ma curiosité, veux-tu me révéler à quoi servent les colonnes O à Y de la feuille "Original" ?
Sauf erreur de ma part, tu as juste fait un copier-coller des colonnes B à L, non ?
Pourquoi as-tu besoin de cette "zone de copie du fichier original pour mise en forme" ? En copiant-collant les colonnes B:L et en faisant la mise en forme du résultat, c'est pareil et plus rapide ...
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
15 déc. 2009 à 02:45
Autres renseignements :

Malgré ton explication détaillée du post 6, j'avoue ne pas encore avoir compris ta démarche :

* 1) Les fichiers que tu reçois sont-ils au format pdf, au format txt, au format doc ou au format xls ?

* 2) "Les gens n'en font qu'à leur tête", c'est bien connu ... Pourquoi ne leur proposes-tu pas des modèles, des fichiers vierges qu'ils n'auront qu'à remplir ?

* 3) Pour quelle raison utilises-tu "Données/Convertir/Largeur fixe" ?
► Les fichiers que tu reçois ne sont donc pas des feuilles Excel ? Et comment pourrais-tu définir la largeur (en caractères) de chaque champ ?
► Ou alors c'est ta concaténation en colonne A que tu dois ensuite fractionner pour retrouver les données de départ ? C'est fou ! Et la première étape de l'assistant de conversion stipulant "Les champs sont alignés en colonnes et sont séparés par des espaces", il faudrait que ta concaténation insère un espace entre chaque item, comme tu l'avais fait dans ton premier fichier
=CONCATENER(J3;" ";K3;" ";L3;" ";B3;" ";D3;" ";E3;" ";F3;" ";G3;" ";H3;" ";I3)
► "La poste impose 38 caractères par ligne adresse, c'est pourquoi j'avais laissé des colonnes vides, sinon, quant tu utilises Données-Convertir-Largeur fixe- et que tu sélectionne la largeur, si tu n'as pas prévu une colonne vide, les 38 caractères sont virés." ça non plus, je ne comprends pas : Comment l'existence d'une colonne vide peut-elle influer sur la conversion d'un texte en "virant" ce texte ? Et ce que tu appelles "ligne adresse", ce serait ce qui est en colonne A ?

En fin de compte, tu as fabriqué un fichier assez compliqué, mais pour vérifier QUOI, en réalité ? Tu évoques "malgré le tri ou autre, ou mauvaise manipulation", mais j'ai du mal à imaginer à quel moment et de quelle façon cela peut survenir ... J'aurai une meilleure appréciation de l'utilité de ton travail quand j'aurai bien appréhendé la méthodologie que tu respectes, depuis la réception des fichiers jusqu'à l'obtention des "lignes adresse" pour la poste.

Cordialement.
0