XL 2016 Réaffectation de données à l'intérieur d'une même cellule

didcac

XLDnaute Occasionnel
Bonjour à tous,
J'ai un fichier dont une Colonne comporte dans chacune de ses cellules beaucoup de données (texte et dates).
Je cherche à retraiter chaque cellule, sachant que la saisie suit un schéma structurel homogène, notamment en matière de caractère séparateur (uniformément, la virgule). Une Macro peut ainsi probablement être réalisable et opérationnelle.
Il s'agit d'insérer des MOTS (suite de 1 à 5 environ) à des endroits bien précis, issus soit d'une cellule externe d'une autre Colonne, soit d'un endroit précis à l'intérieur même de ladite cellule.
Chaque cellule est censée être remplie de Nom(s) d'événements suivi de l'Année puis DEUX POINTS puis le Lieu de l'événement. Là, s'il y a un deuxième événement, il y a systématiquement une VIRGULE puis autre séquence de même conception : Nom Année : Lieu, etc etc

Il y a 3 cas possibles, qui peuvent aléatoirement être présents dans une même cellule (les uns à la suite des autres, même si ci-après je n'en mets qu'un à chaque fois) :

1) le contenu de la cellule commence à tort par une Année (normalement à 100% au format AAAA), car le Nom a été oublié lors de la saisie initiale.
Exemple > 2017 : FLUNCH
NB : Là, le Nom de l'événement peut (heureusement) être récupéré dans une cellule externe pour être copié et inséré avec un ESPACE. Si c'est "Soirée", cela donnerait :
Soirée 2017 : FLUNCH


2) le contenu de la cellule commence bien par le Nom de l'événement suivi d'une Date, mais il est aussi suivi immédiatement par une deuxième voire troisième date car cet événement s'est tenu plusieurs fois dans le même Lieu.
Exemple > Réunion annuelle 2016, 2018, 2019 : SALONS Z
NB : là on doit absolument utiliser le Nom figurant à l'intérieur de la cellule, soit "Réunion annuelle", et pas avoir recours à la cellule externe (indiquant un autre nom).
Je souhaite obtenir :
Réunion annuelle 2016 : SALONS Z, Réunion annuelle 2018 : SALONS Z, Réunion annuelle 2019 : SALONS Z
NB : pour avoir 3 séquences, la virgule n'est présente qu'après les deux première dates, puisque la troisième est dès le départ bien structuré, avec le Lieu situé juste derrière (et finissant).


3) et parfois un mix des 2 soucis (il manque le Nom au début et il y a plusieurs dates) :
Exemple > 2014, 2015, 2019 : PARC ASTERIX
Avec en cellule externe "copiable" : Fête de Noël
Je souhaite obtenir :
Fête de Noël 2014 : PARC ASTERIX, Fête de Noël 2015 : PARC ASTERIX, Fête de Noël 2019 : PARC ASTERIX


Je joins une Feuille avec des données plus complètes, mais du même genre, afin que vous puissiez créer la Macro que mon niveau de compétence ne me permet pas de réaliser, et faire le test dessus.

Je vous remercie beaucoup par avance pour l'attention que vous voudrez bien porter à ma demande d'aide !
 

Pièces jointes

  • Fichier LIEUX.xlsm
    9.6 KB · Affichages: 24

chris

XLDnaute Barbatruc
re
  • Les : doivent suivre l'année et précéder le lieu.
    J'ai supprimé
    • les 06/ devant l'année
    • les : avant l'année
    • les : figurant dans des commentaires
    • les parenthèses suivant l'année
    • j'ai déplacé après Conférence les (toutes) placés entre l'année et le :
  • Les années doivent être sur 4 chiffres.
    • j'ai remplacé les 99 par 1999, etc
    • les années de type ?? ou 20xx ou 20 ?? sont en erreur.
      Dans ce cas on peut trouver 999 dans le résultat
  • Les , doivent séparer des événements annuels
    je les ai supprimées des commentaires
  • Restent des lignes commençant par un lieu qui ne peuvent être traitées ou, de même, des événements sans année
J'ai repéré en jaune les lignes posant problème après mes corrections des autres lignes.
 

Pièces jointes

  • Extraits du Fichier_PQ7.xlsx
    179.5 KB · Affichages: 6

didcac

XLDnaute Occasionnel
Bonjour Chris,
Je viens de voir ton envoi, ce dont je te remercie !
En théorie, les 9 lignes au STABILO Jaunes sont des erreurs que je dois corriger "manuellement" ? Pas de souci.
En revanche, je suis bien embêté, car j'ai testé par hasard quelques lignes, et je trouve des choses étranges. Un nombre très important de lignes a disparu (309 lignes sur 994 !!!), alors que la structure des données présentes dans la cellule est parfaitement bonne "de facto" (aucun traitement spécial à faire, a priori). C'est un peu bizarre.
Par exemples :
• Fiche n°313 : en source, c'est présent, et il n'y a en principe rien à faire :
Sfa 1993 : PAVILLON GABRIEL (car il y a bien le type de réception, l'année, deux points et le lieu). Mais bizarrement cela disparaît dans le Résultat.
• Fiche n°872 : en source, c'est présent. Puis ça disparaît, alors que la correction (rajout du nom de la réception) est parfaitement géré dans des dizaines de lignes dans d'autres cellules... (contexte identique)
1994 : MONTVILLARGENNES

Ces nombreuses suppressions aléatoires et inexplicables sont problématiques.

Merci de m'éclairer et de me dire ce que tu peux faire pour remédier à cela.

NB : j'ai un avertissement de sécurité qui me dit que les connexions de données externes ont été désactivées. Mais en cliquant sur Activer, cela ne change rien.
 

chris

XLDnaute Barbatruc
RE

J'ai modifié : il ne manque que ce qui est incorrect

J'ai encore du corriger des lignes sources...

Comme déjà dit tu n'as pas PowerQuery sur Mac donc il est normal que les connexions de données externes ne puissent être utilisées

Je n'irai pas au delà vu les heures passées dessus.
 

Pièces jointes

  • Extraits du Fichier_PQ8.xlsx
    207 KB · Affichages: 5

didcac

XLDnaute Occasionnel
Bonjour Chris,
Je te remercie beaucoup. Cette version est en effet bien mieux, puisque je ne perds pas quantité de données. Et les marques au Stabilo m'indiquent ce que je devrai revoir manuellement.

Il y a juste une bizarrerie, facilement corrigeable (y compris par moi), mais pour laquelle je voudrais une explication pour être sûr que cela n'engendre pas autre chose.
C'est la présence dans le RESULTAT de (souvent) un segment "ESPACE VIRGULE" (soit " ,") qui vient se glisser inopinément, alors que la cellule source n'a absolument pas cette erreur elle-même...
Exemples :
Fiches n° 2545, 2548, 2571, etc (pour des dizaines de cas).

C'est juste pour comprendre ce que ça vient faire là.
Puis-je supprimer ces caractères inutiles en trop (sans problème) ?

Sinon, merci beaucoup pour tes efforts !!
 

chris

XLDnaute Barbatruc
RE

C corrigé pour la virgule.
Le traitement étant tellement complexe vu le nombre de cas différents que selon l'organisation de la ligne source, la tentative de compiler n années pour un lieu unique donnait une année vide et donc un séparateur inutile

Pour le reste, les données d'entrée ne satisfaisant pas tes propres règles, il n'existe pas de solution à part manuelle...
 

Pièces jointes

  • Extraits du Fichier_PQ8.xlsx
    204.6 KB · Affichages: 4

didcac

XLDnaute Occasionnel
Bonjour Chris,
Ah OK, je comprends la cause.
Merci pour le fichier corrigé.

Pour les fiches en anomalie au Stabilo jaune, est-ce une "ligne de commande" qui colore automatiquement la fiche (chaque fois qu'il y a un problème identifié), ou bien c'est toi qui l'a coloré (manuellement) ?

Juste une précision : si je trouve (à un moment) un moyen d'utiliser un PC avec Excel récent (et PowerQuery), le dernier fichier pourrait être lancé "tel quel", et générer le même résultat que toi ?
 

didcac

XLDnaute Occasionnel
Bonjour Chris,
Tu m'avais bien aimablement aidé sur un fichier, il y a plusieurs mois, avec succès, et aujourd'hui je vais procéder à son exploitation.
Aussi, je voudrais évidemment l'actualiser, et comme je n'ai pas PowerQuery, car sur MAC, peux-tu je te prie juste le relancer pour me le renvoyer "mis à jour" ? Tu m'avais suggéré de le faire, pour faciliter.
Je le mets en pièce jointe.
Merci par avance !
 

Pièces jointes

  • Extraits du Fichier_PQ9 FINAL.xlsx
    192.7 KB · Affichages: 2

didcac

XLDnaute Occasionnel
Bonsoir Chris,
Merci bien, mais je suis confus... j'ai interverti et envoyé un fichier erroné.
Voici en pièce jointe celui qui a été corrigé (renuméroté).
Désolé, et merci !
 

Pièces jointes

  • Extraits du Fichier_PQ10 FINAL.xlsx
    193 KB · Affichages: 2

didcac

XLDnaute Occasionnel
Bonjour,
Cette fois, c'était bon. J'ai bien pu récupérer toutes les données, merci bien !

Mais je bloque sur 2 petites améliorations que je ne sais pas faire (et pour lesquelles tu pourras peut-être m'aider quand tu auras quelques instants, car c'est probablement très simple).

1) Je voudrais enlever 1 (voire peut-être 2 ?) "espaces" parfois présents immédiatement avant un premier mot dans une cellule (et l'appliquer par exemple à toute une colonne). Je ne connais pas la syntaxe à employer pour qu'une cellule commence obligatoirement par un mot, et pas un espace vide !

2) Et je souhaite concaténer le Texte de 2 (et 3) cellules, ce que je sais faire unitairement, mais il faudrait que cela se fasse sur environ 140 colonnes (sachant que c'est une structure identique, à savoir de 5 colonnes en 5 colonnes, en plus de la toute première cellule qui reste commune à tous les "calculs"). Je mets un exemple en pièce jointe pour que ce soit plus compréhensible.
Il y a en fait 2 cellules à remplir, l'une avec 2 données, l'autre pareil avec une troisième donnée (cela peut donc être fait en deux temps successivement, le cas échéant). Une des cellules a un format Date 01/01/2020, et je voudrais qu'elle se transforme en AAAA quand on la concatène.

Sais-tu comment faire ? Peut-être une Macro ? Ou une autre technique ?
Merci de ton éventuelle aide.
Cordialement
 

Pièces jointes

  • Schéma & rubriques.xlsx
    9.6 KB · Affichages: 3

Statistiques des forums

Discussions
292 865
Messages
1 926 842
Membres
183 284
dernier inscrit
villy