Transformer un calendrier au format csv ou ical

Bonjour à tous,

Etant tout a fait novice en la matière (même si je bidouille quand même un peu...), je sollicite votre aide concernant la transformation d'un fichier existant que je vous laisse en PJ.

Il s'agit d'un planning de garde mis à jour chaque année, ou en tout cas régulièrement, et j'aimerais pouvoir l'intégrer directement dans mon agenda en ligne google calendar. J'ai vu que l'on pouvait créer un fichier csv via excel, cependant il faut que les données soient auparavant triées correctement, ce qui parait tout à fait logique!

Mon problème est que mon planning de garde au format Excel est loin d'être lisible, il est fagoté bizarrement et donc j'ai du mal a créer une règle simple pour pouvoir réorganiser les cellules avant de l'exporter en csv... Je pense (en tout cas j'espere!) qu'il existe un moyen simple de reformater tout ca....

Le but final étant de transmettre à chaque personne présente sur ce planning un calendrier de garde qui lui est propre au format csv ou ical.

Le planning en pièce jointe n'est rempli que pour le mois de janvier avec 9 personnes au total (j'ai remplacé leur nom par "personne 1", "personne 2" etc.), mais ce chiffre peut être amené à évoluer.

Voila... j'espère avoir été suffisamment clair.

merci pour tout

help!

Bonjour,

J'avoue que ta structure de données est un peu déconcertante et pas facile à travailler ... je pensais partir d'une bas de données comme ici (il y a une génération de fichier ics à améliorer pour mettre l'heure) https://www.excel-pratique.com/fr/telechargements/plannings/spaced-learning-excel-no434

Ou bien tu peux y puiser le module

Sub agenda()
    nomFich = [fichierICS]
    numfich = FreeFile
    Open nomFich For Output As #numfich

    Print #numfich, "BEGIN:VCALENDAR"

    With Sheets("Cours")
        For lig = 2 To .Range("A1").End(xlDown).Row
            For col = 2 To .Range("A1").End(xlToRight).Column
                If .Cells(lig, col) >= Now Then
                    Print #numfich, "BEGIN:VEVENT"
                    Print #numfich, "SUMMARY:" & (.Cells(lig, 1))
                    Print #numfich, "DTSTART;VALUE=DATE:" & Format(.Cells(lig, col), "yyyymmdd")
                    Print #numfich, "DTEND;VALUE=DATE:" & Format(.Cells(lig, col), "yyyymmdd")
                    Print #numfich, "TRANSP:TRANSPARENT"
                    Print #numfich, "DESCRIPTION:" & (.Cells(1, col))
                    Print #numfich, "END:VEVENT"
                End If
            Next col
        Next lig
    End With

    Print #numfich, "END:VCALENDAR"

    Close #numfich

End Sub

et en amont partir de ta structure pour d'abord la "linéariser"

J'ai commencé à remplacer tous les 20:00 - 24:00 par 20:00-24:00 pour avoir la même structure

Je mets aussi les accents sur les mois

1ère partie ... j'ai créé la base de données

in fine, pour les mois, j'ai mis une date en I1


2ème partie ... d'ici demain matin

Je vais essayer de comprendre tout ca…

Merci beaucoup en tout cas!

Avec le module ics très simplifié ... n'hésite pas à me faire part des difficultés éventuelles.

Super! Je ne m'attendais pas à une solution aussi simple et efficace!

Est-il possible selon toi de créer un agenda par personne? C'est a dire, sous google calendar par exemple, d'avoir la possibilité de masquer ou afficher le planning de telle ou telle personne... Chaque calendrier créé aurait donc pour intitulé le nom de la personne en question avec ses jours de garde.

Bon je ne veux pas non plus abuser... Tu m'a déjà fais gagner un temps précieux donc un grand merci à toi! je vais tenter de bidouiller à l'ancienne

Je regarde demain

C'est possible de créer autant d'agenda (fichier ics) que de personnes.

Attention, en G1 c'est maintenant le dossier de stockage

Plus que parfait

Merci infiniment et chapeau bas!

Bonjour,

Apres 4 ans, je viens réactiver ce fil de discussion, et j'en suis désolé...

En effet la structure du planning de garde a été modifié et simplifié ce qui le rend ma fois plus lisible... mais cela chamboule un peu le VBA qui avait été créé...

J'ai bien essayé de comprendre la structure des lignes de codes mais certaines choses m'échappent.

Une âme charitable pourrait-elle à nouveau m'aider afin de créer les fichiers ical pour chaque personne de garde?

A nouveau un grand merci par avance

Rechercher des sujets similaires à "transformer calendrier format csv ical"