Macro Excel - Retrouver la date en fonction d'une référence
Résolu
JB
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je crée ce post afin de solliciter vos envies de programmation en VB pour Excel.
Je m'explique, afin d'éviter un travail long et fastidieux, je voudrais créer une macro Excel dans le but d'automatiser cette tâche.
BUT:
L'objectif de cette macro serait, à partir d'une référence de la forme AAABCCCDDEEE:
1. extraire la partie concernant la date, ici: CCC pour le numéro du jour et DD pour l'année (voir excel ci-joint: Colonne A de la feuille Données)
2. trouver la valeur CCCDD correspondante dans une table (colonne A de la feuille Calendriers)
3. sortir la date correspondante à la valeur CCCDD au format YYYY-MM-DD (colonne B de la feuille Calendriers)
4. copier cette date en face de la référence correspondante (Colonne B de la feuille Données)
Fichier Test.xls : http://www.gigaup.fr/?g=VGR7I5JDV8
J'avais réussi à créer une macro me permettant d'afficher CCC et DD de deux couleurs différentes sur les cellules sélectionnées afin de mieux voir visuellement ces chiffres et ainsi sortir la date manuellement avec les calendriers. Seulement, ayant énormément de références je voudrais automatiser ce travail afin de gagner du temps. Cependant, je ne connais pas le language VB et n'ai pas assez de temps pour l'apprendre actuellement. C'est pourquoi je fais ma demande ici, si quelqu'un aurait l'amabilité de m'aider.
Voici la première macro que j'ai créé à l'aide de rapides recherches sur le net:
Je vous remercie d'avance pour votre aide.
Cordialement.
Je crée ce post afin de solliciter vos envies de programmation en VB pour Excel.
Je m'explique, afin d'éviter un travail long et fastidieux, je voudrais créer une macro Excel dans le but d'automatiser cette tâche.
BUT:
L'objectif de cette macro serait, à partir d'une référence de la forme AAABCCCDDEEE:
1. extraire la partie concernant la date, ici: CCC pour le numéro du jour et DD pour l'année (voir excel ci-joint: Colonne A de la feuille Données)
2. trouver la valeur CCCDD correspondante dans une table (colonne A de la feuille Calendriers)
3. sortir la date correspondante à la valeur CCCDD au format YYYY-MM-DD (colonne B de la feuille Calendriers)
4. copier cette date en face de la référence correspondante (Colonne B de la feuille Données)
Fichier Test.xls : http://www.gigaup.fr/?g=VGR7I5JDV8
J'avais réussi à créer une macro me permettant d'afficher CCC et DD de deux couleurs différentes sur les cellules sélectionnées afin de mieux voir visuellement ces chiffres et ainsi sortir la date manuellement avec les calendriers. Seulement, ayant énormément de références je voudrais automatiser ce travail afin de gagner du temps. Cependant, je ne connais pas le language VB et n'ai pas assez de temps pour l'apprendre actuellement. C'est pourquoi je fais ma demande ici, si quelqu'un aurait l'amabilité de m'aider.
Voici la première macro que j'ai créé à l'aide de rapides recherches sur le net:
Sub Coloration_Date_n°Série() ' Le coloriage s'applique à l'ensemble de cellules sélectionnées Dim c As Range For Each c In Selection ' Tout le texte en noir Selection.Characters.Font.ColorIndex = 0 ' Le numéro du jour en vert - Characters(à partir du n°X, pendant Y charactère(s)) Selection.Characters(5, 3).Font.Color = RGB(0, 0, 255) ' L'année en rouge Selection.Characters(8, 2).Font.Color = RGB(255, 0, 0) Next c End Sub
Je vous remercie d'avance pour votre aide.
Cordialement.
A voir également:
- Macro Excel - Retrouver la date en fonction d'une référence
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Fonction si et excel - Guide
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Mise en forme conditionnelle excel - Guide
3 réponses
Bonjour,
Tu veux vraiment une macro ?
Parce que tu peux le faire par une formule simple et sans ton tableau :
=DATE(STXT(A2;8;2)+2000;1;STXT(A2;5;3))
date que tu mets au format que tu veux.
eric
PS : d'ailleurs 29410 c'est le 21/10/2010 et non le 24
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Tu veux vraiment une macro ?
Parce que tu peux le faire par une formule simple et sans ton tableau :
=DATE(STXT(A2;8;2)+2000;1;STXT(A2;5;3))
date que tu mets au format que tu veux.
eric
PS : d'ailleurs 29410 c'est le 21/10/2010 et non le 24
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.