XL 2010 Normaliser le format des horaires d'ouverture.

anna2054

XLDnaute Occasionnel
Bonjour,

J'ai une liste excel des horaires d'ouverture dont le format est hétérogène, voudrais créer un macro permettant de normaliser le format.

Ci-joint le fichier initial BH.xlsx et le échantillon du fichier dont j'ai besoin BHNormalises.xlsx.

Pourriez-vous me venir en aide, SVP?

Merci beaucoup.
Anna
 

Pièces jointes

  • BH.xlsx
    451.2 KB · Affichages: 51
  • BHNormalises.xlsx
    8.7 KB · Affichages: 10
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
3. Mon problème est que la partieA est elle-même très hétérogène, donc très difficile de la transformer (à mon niveau), par exemple:
Lundi,08:00,11:30,13:00,16:30|Mardi,09:00,11:30,13:00,16:30|Mercredi,08:00,11:30,13:00,16:30|Jeudi,08:00,11:30,13:00,16:30|Vendredi,08:00,11:30,13:00,16:30|Samedi,Fermé|Dimanche,Fermé
Lundi,07:35,18:00|Mardi,07:35,18:00|Mercredi,07:35,18:00|Jeudi,07:35,18:00|Vendredi,07:35,18:00|Samedi,Fermé|Dimanche,Fermé
La partie mise en gras ne pose aucun problème.
En revanche, il y a tellement de formats différents dans la feuille 1 du classeur BHencours1.xlsx que ça devient un peu compliqué de faire quelque chose d'automatique... sauf à prévoir tous ces cas différents et en espérant qu'il n'y en ait pas de nouveaux qui arrivent plus tard...
Sans parler des lignes qui finissent parfois par une espace...


[edit]
Au temps pour moi : il semble n'y avoir en réalité que 2 formats :
(on passe du format n° 1 au format n° 2 à la ligne 1568)
Code:
Lundi: Fermé, Mardi: Ouvert 24h, Mercredi: 9:00 - 10:00 AM, Jeudi: 9:00 AM - 7:00 PM, Vendredi: 9:00 - 10:00 AM, 11:00 AM - 7:00 PM, Samedi: Fermé, Dimanche: Ouvert 24h
Lundi,Fermé|Mardi,Ouvert 24h|Mercredi,09:00,10:00|Jeudi,09:00,19:00|Vendredi,09:00,10:00,11:00,19:00|Samedi,Fermé|Dimanche,Ouvert 24h


Le résultat obtenu avec ma macro passée sur le premier format devait donner ceci :
Code:
Lundi : Fermé | Mardi : Ouvert 24h | Mercredi : 09h00-10h00 | Jeudi : 09h00-19h00 | Vendredi : 09h00-10h00 / 11h00-19h00 | Samedi : Fermé | Dimanche : Ouvert 24h
mais très facilement modifiable en changeant uniquement les 5 séparateurs que j'ai définis :
1- entre heures et minutes ("h"),
2- entre horaire d'ouverture et horaire de fermeture ("-"),
3- entre horaires du matin et horaire de l'arpès-midi (" / "),
4- entre le jour et ses horaires (" : "),
5- entre les différents jours (" | ").
[/edit]
 
Dernière édition:

anna2054

XLDnaute Occasionnel
Bonjour Sylvanu, Marcel32, Eric,

En ce qui concerne ce format d'horaires, je dois respecter une norme précise, suis en contact avec une autre personne pour savoir comment séparer matin de l'après midi et puis vous tiendrai au courant.

Merci pour votre patience.
Anna
 

TooFatBoy

XLDnaute Barbatruc
OK. Pour le format de sortie, tu feras comme tu voudras.

Mais pourquoi y a-t-il 2 formats différents en entrée (avec changement à la ligne 1568) ?
Si plus tard tu as d'autres horaires à "homogénéiser", quel sera le format de ces horaires à transcoder ?
Y aura-t-il un seul format (lequel) ou plusieurs (sont-ils déjà connus) ?
 

anna2054

XLDnaute Occasionnel
OK. Pour le format de sortie, tu feras comme tu voudras.

Mais pourquoi y a-t-il 2 formats différents en entrée (avec changement à la ligne 1568) ?
Si plus tard tu as d'autres horaires à "homogénéiser", quel sera le format de ces horaires à transcoder ?
Y aura-t-il un seul format (lequel) ou plusieurs (sont-ils déjà connus) ?
Votre remarque est pertinente. Mais, comme je l'ai expliqué à Eric (#41), ce travail (de ma part) dépend d'un autre travail qui me donne des instructions que je dois respecter.
Je suis donc tributaire de ce qu'ils me fournissent :-(
J'espère quand même que les prochains fichiers d'horaires ne soient pas (très) différents de ce premier.
 
Dernière édition:

anna2054

XLDnaute Occasionnel
Bonjour Sylvanu, Marcel32, Eric,

En ce qui concerne ce format d'horaires, je dois respecter une norme précise, suis en contact avec une autre personne pour savoir comment séparer matin de l'après midi et puis vous tiendrai au courant.

Merci pour votre patience.
Anna
Bonjour Sylvanu, Marcel32, Eric,

J'ai reçu la réponse: C'est la virgule (,) qui est utilisée pour séparer matin de l'après midi.

Bonne journée à vous tous :)
Anna
 

anna2054

XLDnaute Occasionnel
Bonjour,

J'ai besoin d'une nouvelle macro (ou de modifier la macro de Sylvanu, #40) pour qu'elle puisse prendre en compte les exigences suivantes:

1. Les horaires d'ouverture journaliers doivent contenir 2 créneaux horaires (Ex.: Samedi,9:00-12:00,13:00-17:00) - et pas un seul (Ex.: Samedi,9:00-17:00).
Pour les cas où il n'y a qu'un seul créneau horaire (Ex.: Samedi,9:00-17:00), ce dernier doit être transformé au format de 2 créneaux, avec 12:00 au milieu (Ex.: Samedi,9:00-17:00 transformé en Samedi,9:00-12:00,12:00-17:00).

2. Pour les journée de fermeture complète: Ne rien remplir. Ex.: Samedi est le jour fermé: Laisser vide.

3. Pour les journée d'ouverture complète: Ne remplir que la date. Ex.: Samedi est le jour d'ouverture 24h/24h: Samedi.

4. C'est la virgule (,) qui est utilisée pour séparer matin de l'après midi.

Un exemple:
Lundi|Mardi,9:00-12:00,12:00-17:00|Mercredi,9:00-14:00,17:00-21:00|Jeudi,9:00-14:00,17:00-21:00|Vendredi,9:00-14:00,17:00-21:00|Samedi,9:00-14:00,17:00-21:00
Lundi: ouvert 24/24
Mardi: un seul créneau horaire transformé au format de 2 créneaux
Dimanche fermé

Veuillez trouver en fichier joint les horaires pour lesquels j'ai besoin de la macro.
Pour me permettre de savoir quels horaires correspondent à quelle boutique, merci de garder le couple "Code" - "Horaires" intacte, SVP.

Note importante: Il me paraît que la création de cette macro soit compliquée. Mais si la macro créée est capable de traiter plus de 50% des lignes, c'est déjà pas mal.
Merci de votre temps précieux.


Merci infiniment.
Anna
 

Pièces jointes

  • BHM27112020.xlsx
    279.8 KB · Affichages: 3
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 176
Messages
2 085 959
Membres
103 065
dernier inscrit
HB ARPF 95