Word vers Excel avec ajout d'info -simplifié

Bonjour à tous sur le forum,

dans Word, j'ai une succession de 2 types de lignes: WUFR10 et Alerte. Voici une liste simplifiée

WUFR10 FRAB 111923

Alerte FBG falar

Alerte FBG srose.

WUFR10 FRAB 112013

WUFR10 FRAB 240109

Alerte FJT agath adele.

WUFR10 FRAB 21751

Alerte FMX lachu.

WUFR10 FRAB 201858

WUFR10 FRAB 202305

Alerte FMJ lievr maniw label wakef chene

Des lignes WUFR10, la seule information à retenir est la date et l'heure, ex: 111923 où 11 est la journée et 1923 l'heure/minute. Seule l'heure de la ligne précédant immédiatement les alertes qui suivent est retenue

Dans un fichier excel, j'aimerais qu'une macro donne ce genre de résulats:

Bulletin Émis Région Département

Alerte 2011-04-11 19:23 FBG falar

Alerte 2011-04-11 19:23 FBG srose

Alerte 2011-04-24 01:09 FJT agath

Alerte 2011-04-24 01:09 FJT adele

Alerte 2011-05-02 17:51 FMX lachu

Alerte 2011-05-20 23:05 FMJ lievr

Alerte 2011-05-20 23:05 FMJ maniw

Alerte 2011-05-20 23:05 FMJ label

Alerte 2011-05-20 23:05 FMJ wakef

Alerte 2011-05-20 23:05 FMJ chene

Je fournis un fichier excel où les lignes de word ont été copiées et converties en colonnes. Ma démarche (manuelle) y est expliquée et devrait apporter plus de précisions sur ce que je désire accomplir.

Merci à l'avance

Émil

Bonjour forum,

je constate que mon appel a été ignoré. Je reconnais que le défi posé était trop large et peut-être ambigüe. Pour ce faire, j'ai simplifié le fichier WORD d'origine de telle sorte que le problème peut se résumer essentiellement à des copier/coller conditionnels mais avec quelques ajouts que les pros sur ce forum sauront bien prendre soin.

Alors je vous invite à regarder le nouveau fichier excel ci-joints où je l'espère mon cheminement et ma pensée sont mieux exprimés.

Je vous remercie,

Émil

Salut Emil,

J'avais commencé à regarder ta demande avant que tu postes ton deuxième message ; deuxième message que je ne découvre qu'au moment de poster ma réponse.

Je n'ai donc pas regardé ton deuxième fichier car j'ai déjà assez de questions avec le premier

Ma première proposition ci-jointe est vraiment un premier jet et il faudra probablement corriger plein de trucs. J'ai placé deux InputBox au départ pour le mois et l'année, mais il faudra voir s'il faut simplifier tout ça et / ou n'autoriser que des saisies bien précises.

Ensuite, j'ai un peu de peine avec ton format de date/heure dans la colonne N. Comme présenté, ça fonctionne, mais tu ne pourrais normalement pas réutiliser cette colonne en tant que date. A voir si c'est gênant.

Pour importer et traiter les données depuis Word, il faudrait également voir par la suite, selon que le premier code proposé te donne satisfaction ou non.

A te relire.

EDIT de 22:55 : Ah oui, une de mes questions concernait l’incrémentation des dates. On pourrait bien considérer qu’à chaque « retour en arrière » dans le jour du mois, on considère que l’on est un mois plus tard. Mais est-ce qu’il n’y a jamais de trou, c'est-à-dire que l’avant dernière alerte serait le 20 mars et la prochaine seulement le 3 mai ? De plus, est-ce que les dates peuvent être à cheval sur deux années ?

24emil.zip (12.21 Ko)

Bonjour,

tout d'abord, je vous remercie pour l'attention et l'aide. J'ai testé la macro sur un échantillon plus volumineux et tout semble très bien fonctionner. Une exception et d'ailleurs, ça concerne votre questionnement:

" EDIT de 22:55 : Ah oui, une de mes questions concernait l’incrémentation des dates. On pourrait bien considérer qu’à chaque « retour en arrière » dans le jour du mois, on considère que l’on est un mois plus tard. Mais est-ce qu’il n’y a jamais de trou, c'est-à-dire que l’avant dernière alerte serait le 20 mars et la prochaine seulement le 3 mai ? De plus, est-ce que les dates peuvent être à cheval sur deux années ?"

Effectivement, la macro actuelle n'incrémente pas les mois. Il faut savoir que l'ordre des dates/heure est toujours en ordre chronologique. Pour incrémenter les mois, la meilleure option serait:

à chaque fois que le jour du mois est plus petit que le précédent, la macro demande à l'usager de confirmer le prochain mois. Cette procédure n'est pas 100% infaillible: quoique très peu probable mais possible il se peut par exemple qu'on passe du 2 avril au 7 mai. Néanmoins, le fait de demander une confirmation plus fréquente du mois à l'usager permettra à ce dernier de constater et de corriger l'erreur. Pour ce qui est de l'année, pas de soucis puisqu'un fichier ne traite qu'une année à la fois.

Les modifications que j'ai apporté au fichier Word intrant, ça ne cause pas de problème au traitement de la macro actuelle.

Émil

Re,

Concernant ce problème de mois - puisqu’il faut quand même le traiter manuellement - ne serait-ce pas plus simple de le traiter au préalable ? Je veux dire : ne serait-il pas préférable de contrôler et d’indiquer le bon mois avant de lancer la macro, ce qui éviterait l’ouverture d’un InputBox à chaque changement de date, ce qui peut devenir rapidement assez pénible ?

Si les colonnes C à L sont à garder pour les différents « Départements » possible, pourquoi ne pas indiquer le mois de la première ligne concernée dans la colonne M (si possible au format M ou MM et non pas en toutes lettres) puis indiquer dans la même colonne chaque changement de mois ?

Alors seule la date de l’année serait demandée à l’utilisateur (ou ne pourrait-on pas toujours utiliser la date de l’année en cours ?).

Cordialement

Bonjour,

avant de répondre aux questions, j'ai quelques précisions à apporter

1. les données de départ (col. A, B,C) sont en fait l'ouput d'une macro dans WORD qui ne retient que l'en-tête (WUFR10 ...) et que les régions/dpt en alerte dans différents bulletins. Tout le bla, bla,bla qui fait plusieurs centaines de pages est supprimé,

2. d'une année à l'autre, le début des alertes (orages violents) n'est pas toujours au même mois,

3. la macro WORD me servira à aller fouiller dans des archives

4. depuis que j'ai modifié la macro dans WORD, les départements qui étaient dans les col. D, E, F,... sont maintenant tous disposés

dans la col. C.

Alors, voilà ce que je propose comme convention qui va dans le même sens que votre proposition:

Dans la Cel. D1: l'année sous forme: aaaa sera indiqué

dans les cel. D2, D3,D4,..... les mois seront préalablement indiqués sous le format: M ou MM.

Dans le cas, où les celulles D:D seraient vides, un message seraient envoyés à l'usager lui indiquant de fournir les renseignements nécessaire au bon fonctionnement de la macro.

Est-ce que cela vous convient?

Merci

Émil

Bonsoir,

Emil a écrit :

Alors, voilà ce que je propose comme convention qui va dans le même sens que votre proposition:

Dans la Cel. D1: l'année sous forme: aaaa sera indiqué

dans les cel. D2, D3,D4,..... les mois seront préalablement indiqués sous le format: M ou MM.

Dans le cas, où les celulles D:D seraient vides, un message seraient envoyés à l'usager lui indiquant de fournir les renseignements nécessaire au bon fonctionnement de la macro.

Est-ce que cela vous convient?

Est-ce possible d'avoir un fichier exemple de la situation après avoir inscrit l'année et les mois dans la colonne D ? C'est surtout l'emplacement des différentes indications des mois qui m'intéresserait.

Bonnes salutations.

Bonsoir,

En reproduisant le fichier Excel en exemple, je réalise qu'il est impossible de spécifier l'année à la celulle D1.

Dans ce cas, je suggère de simplement laisser l'inputbox pour laisser à l'usager le soin de spécifier l'année au début.

J'ai aussi noté comme vous l'aviez mentionné que la date n'est pas reconnue par Excel.

J'ai inclus dans le fichier une formule qui peut peut-être aider (voir col. I)

Émil

Salut Emil,

Dans ton premier fichier, les "Départements" étaient répartis entre les colonnes C à L, maintenant ils sont tous dans la colonne C. Quelle est la version définitive ? Pour mon code, ça change tout

Tu indiques que tu as constaté comme moi que la date n'était pas reconnue par Excel, mais tu ne dis pas - comme je te l'avais demandé - si c'est gênant ou non. Donc faut-il absolument partir sur une autre base - tel que celle que tu suggères maintenant avec une formule dans la colonne I - ou peut-on continuer sur la base que j'avais tout d'abord choisie ?

J'imaginais que tu plaçais l'indication du premier mois sur la première ligne concernée puis l'indication du changement de mois sur la première ligne du mois suivant - avec des vides entre-deux - mais tu as placé une indication sur chaque ligne. Si ma solution est vraiment plus simple, il me semble qu'elle suffirait.

A te relire.

Yvouille a écrit :

Salut Emil,

Dans ton premier fichier, les "Départements" étaient répartis entre les colonnes C à L, maintenant ils sont tous dans la colonne C. Quelle est la version définitive ? Pour mon code, ça change tout

Comme j'expliquais dans mon 2ième poste, pour simplifier, j'ai modifié ma macro dans Word pour que tous les "départements se retrouvent dans la col. C. Mais je ne crois pas que tu ais à modifier ta macro pour cela. Je l'ai déjà testé et elle fonctionne très bien.

Tu indiques que tu as constaté comme moi que la date n'était pas reconnue par Excel, mais tu ne dis pas - comme je te l'avais demandé - si c'est gênant ou non. Donc faut-il absolument partir sur une autre base - tel que celle que tu suggères maintenant avec une formule dans la colonne I - ou peut-on continuer sur la base que j'avais tout d'abord choisie ?

J'ai mis la formule dans la colonne I par hasard, elle aurait pu être n'importe où. Mon but était seulement de t'aider en intégrant la formule dans la macro mais peut-être que ce n'est pas aussi simple (je m'y connais encore peu en macro excel). Tu peux aussi laisser le format texte et je ferai la conversion grâce à une formule.

J'imaginais que tu plaçais l'indication du premier mois sur la première ligne concernée puis l'indication du changement de mois sur la première ligne du mois suivant - avec des vides entre-deux - mais tu as placé une indication sur chaque ligne. Si ma solution est vraiment plus simple, il me semble qu'elle suffirait.

Pourquoi pas si c'est plus simple. On peut mettre seulement les changements de mois. Je devine que ces derniers devraient être sur la ligne des WUFR (pour qu'ils ne soient pas considérés comme des départements par la macro).

Émil

Emil a écrit :

Comme j'expliquais dans mon 2ième poste, pour simplifier, j'ai modifié ma macro dans Word pour que tous les "départements se retrouvent dans la col. C. Mais je ne crois pas que tu ais à modifier ta macro pour cela. Je l'ai déjà testé et elle fonctionne très bien.

Elle fonctionne effectivement bien, mais elle fait des boucles inutiles sur les colonnes D à L. De plus, ces boucles inutiles ne créent pas de problème tant que les cellules des colonnes concernées sont vides, mais ça peut en créer plus tard, lorsque tu veux utiliser ces colonnes et que tu ne penses plus à ta boucle inutile.

Pour le format de la colonne "Date/Heure", tu n'as pas répondu avec précision à ma demande de savoir si tu avais besoin d'un format de date pour la suite des opération on non. Tu m'indiques seulement que tu aurais une solution par formule afin de créer un format de date à cet endroit et/ou que tu peux transformer un format Texte en format Date par la suite. Dans le doute, j'ai modifié mon code de manière à ce que tu aies un format de date dans cette colonne, mais j'ai choisi une solution - à voir dans le code - un peu différente de la tienne, avec cette formule.

Concernant l'indication du mois dans la colonne D, tu peux n'y indiquer que le premier changement du mois - comme dans mon fichier ci-joint - ou compléter l'entièreté de la colonne ; les deux solutions conviennent pareillement.

A te relire.

21emil-v3.zip (14.23 Ko)

Bonjour,

j'aime bien les solutions que tu as proposé. Cependant, lorsque j'exécute la macro de mon côté, il y a un problème avec les date/heure dans la col. I . J'obtiens: #VALEUR!

Autrement, tout est parfait.

Émil

Emil a écrit :

Cependant, lorsque j'exécute la macro de mon côté, il y a un problème avec les date/heure dans la col. I . J'obtiens: #VALEUR!

Euh ... c'est pour le moins embêtant Chez moi il n'y a aucun problème. Comment utilises-tu mon code ? Dans le fichier que j'ai placé dans mon dernier message ou le recopies-tu dans un autre fichier ? Si c'est cette dernière solution, il faudrait absolument fournir ce fichier là. Un problème peut se cacher où on y pense pas.

Autrement il se pourrait que ça vienne parce que j'ai un PC en allemand. Regarde ce que tu as comme format dans la colonne I. Moi j'ai ce format-ci en allemand TT.MM.JJJJ hh:mm et toi tu devrais avoir JJ.MM.AAAA hh:mm. en français. Si c'est ça, je suis désolé, mais je pensais qu'Exel traduisait les formats comme il traduit les formules

26 03

Cordialement.

De retour à la maison, j'ai testé mon fichier sur un PC francophone avec une version Excel 2007 : le format de la colonne I est bien traduit

capture bis

J'attends de tes nouvelles.

Bonjour,

désolé pour le délai...

J'ai tenté de changer le format des cellules. D'une part, j'ai noté que ma version Excel (anglais USA) ne proposenent pas les mêmes formats que les versions européennes (français ou allemand). J'ai tout de même tenté de spécifier le format des cellules pour l'harmoniser à la macro, mais j'obtenais touours le même message: #VALEUR!

Alors, j'ai modifié une ligne de ta macro:

DerLigH = Range("H65536").End(xlUp).Row

Range("H" & DerLigH + 1) = "Alerte"

Range("M" & DerLigH + 1) = Année & "-" & Mois & "-" & Jour & " " & Heure & ":" & Secondes

Range("I" & DerLigH + 1).Select

Et maintenant, tout fonctionne à merveille mais Je ne peux expliquer exactement la raison.

J'ai aussi joint une image montrant les options de formats offerts dans ma version Excel. Peut-être trouveras-tu une explication?

En tous les cas, pour ma part, je suis pleinement satisfait et je considère que mon problème est entièrement résolu.

forum 28mars2012

Merci beaucoup

Émil

Je me demande si ça n'a pas à voir avec des formats inscrits dans le panneau de configuration de l'ordinateur lui-même et qu'Excel va "consulter", d'où l'obligation pour toi d'inscrire ces tirets. Mais "va savoir"

L'essentiel est que tu aies ta solution.

Amicalement.

Rechercher des sujets similaires à "word ajout info simplifie"