Tatiak

Excel, Vba, Vbs


15 juin 2016

Gestion de budget "familial"

Pour répondre à la demande de Joscarca,  voici une proposition d'appli de gestion de budget perso.

Elle permet :

* la gestion de plusieurs comptes différents jusqu'en 2036
* de faire des virements entre comptes
* de prévoir des écritures en débit différé (carte de crédit)
* de faire un pointage
* d'avoir un visuel par mois et par compte des écritures, avec tri possible
* d'avoir un bilan annuel et mensuel par rubrique + graphique
* de créer ses propres rubriques et ses propres intitulés de mode de paiement
* de faire (à la fermeture) une sauvegarde automatique sur son disque dur et sur tout support connecté présent (clé USB, disque externe, ...) => dossier type d:\comptes\

Les données de démo présentes sont fictives. Il suffit de les effacer (onglets "Cptes" et "Ecritures") pour saisir ses propres données.

Téléchargement de : Budget_Perso_v1d.xlsm

 

Pierre

Posté par tatiak à 14:03 - Applications - Commentaires [0] - Permalien [#]

03 juin 2016

Fichier GPX et Excel

Capture

Vous faites de la randonnée ou du cyclisme (ou autre sports), et vous utilisez votre smartphone ou votre GPS  pour enregistrer votre parcours.
Si à l'issue de votre activité vous souhaitez récupérer les données produites, par exemple pour construire un nouveau parcours à effectuer, ce fichier Excel est fait pour vous.

GPX est un format standard de sauvegarde de trace GPS utilisé par de nombreuses appli de smartphone et de nombreux GPS. Ces fichiers sont des fichiers texte au format xml, avec des balises simples.

La première étape va être d'exporter votre parcours depuis votre appli ou votre GPS au format GPX (via la fonction d'export GPX de votre appli, cf le mode d'emploi de votre dispositif).

Ensuite, pour récupérer les données d'un fichier GPX avec Excel, il suffit donc de lire le fichier et de repérer les balises pour copier les coordonnées et autres info dans une feuille.
Une fois cet import de données réalisé, il est facile d'en dessiner la trace sur une feuille Excel blanche pour visualiser votre parcours.

A l'inverse, depuis la liste des coordonnées que vous aurez modifié pour construire votre nouveau parcours, il suffira d'écrire cette liste dans un fichier texte au format xml avec les "balises GPX" pour obtenir un fichier GPX que vous pourrez réinjecter dans votre smartphone ou votre GPS pour votre prochaine randonnée.

Dans le fichier Excel joint dans l'archive zip, vous avez donc un bouton "Import Gpx" pour importer les données d'un fichier GPX et dessiner le parcours sur la feuille "Carte".
Sur la feuille "Data" sont listées les coordonnées importée, que vous pourrez exporter au format GPX => bouton "Export Gpx" après éventuelle modification.

Vous trouverez également dans l'archive zip un fichier GPX de démo, produit par le fichier Excel et lisible par lui.

Téléchargement de : Excel_et_GPX_20160603.zip

 

A noter qu'il sera facile de copier/coller un fond de carte (depuis www.openstreetmap.org par exemple) pour améliorer le visuel de votre tracé : cf illustration


Bonne randonnée!
Pierre

Posté par tatiak à 10:46 - Excel-Cartographie - Commentaires [0] - Permalien [#]

25 mai 2016

Utiliser une base de données Access depuis un fichier Excel

Sous Excel, il est parfois utile d'interagir avec des fichiers Access, par exemple si vous disposez d'une version d'Office sans Access mais que vous avez besoin d'expoiter des données au format .mdb ou .accdb

La solution passe par ADO (ActiveX Data Objects) et des requêtes Sql (cf. http://sql.sh/).
A noter, le Vba n'accepte pas tout le langage Sql standard, mais pour l'essentiel on y arrive.

La méthode se base sur une fonction "passe-partout" qui établit la connection avec le fichier externe et qui exécute une requête Sql quelconque (en lecture ou écriture). La fonction renvoie un entier long correspondant soit à -1 si problème, soit 0 pour des requêtes INSERT ou DELETE qui ont abouti, soit au nombre d'enregistrements lus pour des requêtes SELECT. Dans ce dernier cas les enregistrements sont stockés dans la variable tableau "Rcd".
Voici son code à mettre dans un module quelconque :

Function Query(Req As String, Optional Head As Byte = 1) As Long
Dim Cnx As Object, Rst As Object
Dim T As Variant, Col_SQL As Integer, i As Long, j As Long

    On Error GoTo errhdlr
    Set Cnx = CreateObject("ADODB.Connection")
    Cnx.Provider = "MSDASQL"
    
    Cnx.Open "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=" & BDD
 
    If Left(Req, 6) = "SELECT" Then
        Set Rst = CreateObject("ADODB.Recordset")
        Rst.Open Req, Cnx, 3

        Col_SQL = Rst.Fields.Count - 1
        If Head = 1 Then
            ReDim Rcd(Col_SQL, 0)
            For i = 0 To Col_SQL
                Rcd(i, 0) = Rst.Fields(i).Name
            Next i
        End If
        
        Query = Rst.RecordCount
        If Not Query = 0 Then
            If Head = 1 Then ReDim Preserve Rcd(Col_SQL, Query) _
            Else ReDim Rcd(Col_SQL, Query - 1)
            ReDim T(Col_SQL, Query - 1)
            Rst.MoveFirst
            T = Rst.GetRows
            For i = 0 To UBound(T, 1)
                For j = 0 To UBound(T, 2)
                    Rcd(i, j + Head) = IIf(IsNull(T(i, j)), "", T(i, j))
                Next j
            Next i
        End If
    Else
        Cnx.Execute Req
        Query = 0
    End If
    
    Cnx.Close
    Set Rst = Nothing
    Set Cnx = Nothing
    Exit Function
    
errhdlr:
    If Not Rst Is Nothing Then If Rst.State = 1 Then Rst.Close
    If Not Cnx Is Nothing Then If Cnx.State = 1 Then Cnx.Close
    Set Rst = Nothing
    Set Cnx = Nothing
    Query = -1
    MsgBox (Err.Description)
End Function

     
Pour commencer, il sera nécessaire d'initialiser la variable BDD, par exemple dès l'ouverture du fichier Excel :

Private Sub Workbook_Open()
    BDD = ActiveWorkbook.Path & "\BaseAccess.accdb"
    ' ou bien : BDD = "C:\dossier_truc\sous-dossier_bidule\BaseAccess.accdb"
End Sub


Voici ensuite 3 procédures de base (à placer par exemple dans le même module que la fonction précédente), pour inserer, mettre à jour ou supprimer un enregistrement d'une base "BDD":

Sub Insert_DB(Tbl As String, Head As String, Data As String)

    Req = "INSERT INTO [" & Tbl & "]"
    If Not Head = "" Then Req = Req & " (" & Head & ")"
    Req = Req & " VALUES (" & Data & ")"
    lig = Sql.Query(Req)
End Sub


Sub Update_DB(Tbl As String, UPD As String, Cond As String)

    Req = "UPDATE [" & Tbl & "] SET " & UPD & " WHERE " & Cond
    lig = Sql.Query(Req)
End Sub


Sub Delete_DB(Tbl As String, Cond As String)

    Req = "DELETE FROM [" & Tbl & "]  WHERE " & Cond
    lig = Sql.Query(Req)
End Sub



Ainsi, pour créer par exemple la 100ème ligne dans la table "CLIENTS", il suffira d'écrire : (ici la table contient 3 champs : Id, Nom, Prenom)

    Insert_DB "CLIENTS", "Id, Nom, Prenom", "100, 'Dupond', 'Jean'"

Vous aurez remarqué : les données textes sont entourées par des quotes simples contrairement aux données numériques.

Pour des dates, elles seront au format mm/jj/aaaa et entourées par des dièses, ex pour le 24 mai 2016 : #05/20/2016#


Pour mettre à jour cette 100ème ligne, on écrira un truc genre:

    Update_DB "CLIENTS", "Nom='DuponT', Prenom='Marc'", "Id=100"
     

Pour supprimer cette 100ème ligne, il suffira d'écrire :

    Delete_DB "CLIENTS", "Id=100"
     

Mais comment savoir que l'enregistrement suivant à créer sera le 100ème?
Et bien il suffit d'interroger la base avant l'Insert via une nouvelle fonction :

Function Get_Max_Id(Tbl As String, Head As String) As Long

    Req = "SELECT MAX(" & Head & ") FROM [" & Tbl & "]"
    Get_Max_Id = Query(Req)
    If Rcd(0, 1) = "" Then Get_Max_Id = 0 Else Get_Max_Id = CLng(Rcd(0, 1))
End Function

Le numéro du prochain enregistrement s'obtient alors facilement  :

    Dim Id_suivant as Long
    Id_suivant = Get_Max_Id("CLIENTS", "Id") + 1


On peut donc interroger la base par des SELECT. Un exemple simple et utile, pour alimenter une liste déroulante à partir d'un champs d'une table, une fonction de base :

Function Get_Combo(Tbl As String, Chps As String) As Variant()

    Req = "SELECT DISTINCT " & Chps & " FROM [" & Tbl & "]" & _
            " ORDER BY " & Chps

    If Query(Req, 0) > 0 Then Get_Combo = Application.Transpose(Rcd) _
    Else Get_Combo = Array("")
End Function

Pour alimenter un combobox (qui sera donc sans doublon et en ordre alfa  : cf DISTINCT et ORDER BY), avec ici la liste des noms des clients, on écrira simplement :

    Userform1.ComboBox1.List = Get_Combo("Clients", "Nom")


Pour finir, un exemple de fonction tirée d'une de mes appli, pour montrer que la requête Sql peut inclure des jointures et des champs calculés (on peut aussi faire des agrégations):

    Function Get_EvnParRsc(id As Long, dt1 As Date, dt2 As Date, Gen As String, Cat As String) As Variant()
                           
        Req = "SELECT E.Genre, E.Categ, E.Deb, E.Fin, E.Hfin-E.Hdeb, R.Nom " & _
                " FROM ([Evnmnts] AS E" & _
                " INNER JOIN [Assoc] AS A ON A.Id_Ev=E.Id)" & _
                " INNER JOIN [Ressources] AS R ON R.Id=A.Id_Re" & _
                " WHERE R.Id=" & id & _
                " AND ((clng(E.Deb) BETWEEN " & CLng(dt1) & " AND " & CLng(dt2) & " )" & _
                " OR (clng(E.Fin)  BETWEEN " & CLng(dt1) & " AND " & CLng(dt2) & ")" & _
                " OR (clng(E.Deb)<" & CLng(dt1) & " AND clng(E.Fin)>" & CLng(dt2) & "))"

        If Not Gen = "" Then Req = Req & " AND E.Genre='" & Gen & "'"
        If Not Cat = "" Then Req = Req & " AND E.Categ='" & Cat & "'"
       
        Req = Req & " ORDER BY E.Genre ASC, E.Categ ASC"

        If Query(Req) > 0 Then Get_EvnParRsc = Application.Transpose(Rcd) _
        Else Get_EvnParRsc = Array("")
       
    End Function

Un appel à une fonction de ce genre renvoie un tableau à 2 dimensions qu'on utilise ensuite comme n'importe quel tableau ordinaire.


Pour illustrer mon propos, ci-après une démo constituée de 2 fichiers (à décompresser dans un même dossier de son Pc) : un fichier Excel sans aucune donnée et un fichier accdb contenant 2 tables (et quelques données fictives) :
* une table 'Clients' (Id, Nom, Prénom)
* et une table 'Information' (Id, Id_C, Nte) => Id=le n° de la fiche info, Id_C= le n° de la fiche 'Client'

Les 2 tables sont  reliées par un index : Id <=> Id_C, relation un-à-plusieurs classique.

Le nom de la base (+ chemin) est initialisé dans le module 'Thisworkbook'

L'ensemble des fonctions de liaison avec la base Access est dans le module 'Sql'

La démo propose 2 fonctions principales :
* création d'une nouvelle fiche => bouton 'nouvelle fiche'
* consultation/modif des fiches => bouton 'Liste'

Dans la liste : un double-clic sur une ligne ouvre la fiche client pour consultation/modification

Dans la fiche : plusieurs boutons pour ajouter/supprimer une info à relier, enregistrer les modif, supprimer la fiche.
La fiche affiche l'Id, le nom, le prénom et la liste des info reliées au client (Nb : dans cette liste, pour l'affichage, des colonnes sont masquées=>largeur=0)

Le tout est fonctionnel (mais simplex), sans code 'exotique', l'objectif étant de montrer la mise en oeuvre d'une liaison Excel/Access (et non de proposer une appli d'une utilité réelle)

Téléchargement de Démo.zip

Pierre

Posté par tatiak à 18:01 - Excel-Base de Données - Commentaires [0] - Permalien [#]

02 mai 2016

Carte géographique sous Excel (coordonnées GPS), Pays d'Europe + Routes

Depuis fin 2015, le site public.opendatasoft.com mets à la disposition de tous (en licence ouverte) des nouveaux jeux de data issus de www.eurogeographics.org

Ces jeux de data sont intéressants puisqu'ils concernent les limites adminitratives de tous les pays européens ainsi que le tracé des routes, en voici les liens :



Ainsi, en suivant ma méthode de dessin de carte sur Excel et en utilisant par exemple pour la Belgique (de nombreux Belges visitent mon blog, bonjour et merci à eux!) les data :


On obtient une carte de ce pays découpée par régions administratives et indiquant quelques unes des routes (de sélection arbitraire, car la liste est longue).

Téléchargement de : Belgique_2mai2016.xlsm



Dans cet exemple, une fonction de coloration de chaque zone est prévue selon un "score" indiqué en colonne G de l'onglet Data, et chaque zone est cliquable pour un affichage d'information.
Cet exemple peut largement être amélioré et adapté à votre usage.

Et bien sûr cet exemple peut être adapté aux différents pays d'Europe référencés dans la base de public.opendatasoft.com, comme par exemple ici pour la Suisse  avec ses principaux lacs:

Téléchargement de : Suisse_16mai2016.xlsm

 

Autre exemple d'utilisation : une carte de l'Ile de France avec ses principaux axes routiers. Un clic sur une route pour afficher son numéro et la surligner en rouge. Sélection/déséselection dans la liste pour afficher/masquer la route.

Téléchargement de : IleDeFrance_Routes.xlsm

Pierre

 

PS : Suite à l'indication de Peter voici le lien vers data.opendatasoft.com qui offre en effet une mine d'informations pour vos cartes futures!

Posté par tatiak à 10:03 - Excel-Cartographie - Commentaires [4] - Permalien [#]

24 mars 2016

RSC-Planner : Gestion de ressources

En prolongement de l'appli Agenda++ voici RSC-Planner, application de gestion de ressources proposant une visualisation du planning des activités et/ou indisponibilités de vos salariés ou de vos matériels divers (véhicule, salle de cours, outil, livre, ...)

Vos ressources peuvent être regroupées en "équipe" (Administratifs, Vendeurs, Commerciaux, Véhicules, ...)
Chaque ressource peut être décrite par une ou plusieurs "compétences" (ex : un vendeur peut avoir une compétence "Vente" + une compétence "Livraison" + ...)

Les événements représentent les activités ou indisponibilités des ressources :
- exemple, une réunion pourra impacter (saisie d'une seule fiche évènement) :
* un ou plusieurs salariés
* + une salle de réunion
* + éventuellement du matériel (vidéoprojecteur, ...)
* + éventuellement un ou plusieurs contacts

- autre exemple : une livraison pourra impacter :
* un ou plusieurs salariés
* + un ou plusieurs véhicules
* + un ou plusieurs contacts


Configuration de l'appli (menu Application/Configuration) pour indiquer:
* Eventuellement les différents sites de votre entreprise
* Les différentes ressources, à définir par :
-- un code couleur
-- un type (il est impératif d'utiliser les sigles RH ou RM)
-- une équipe
-- une fonction
-- une fonction abrégée (en 3 lettres)
* Les activités et les indisponibilités, à définir par :
-- un code couleur
-- un intitulé

L'appli propose un planning selon 3 vues différentes : journée/semaine/mois  
Un calendrier (perpétuel) permet de choisir la période à visualiser
Un filtrage permet d'afficher différents types de ressources (par site, par fonction, par compétence, ...) ou différents types d'événements (rendez-vous, formation, chantier, congés, ...)

Saisie des fiches-ressources et des fiches-contacts via menu liste ou menu nouvelle fiche (contact = client ou fournisseur ou prospect ou autre)

Modification des fiches-ressources via menu liste ou via planning par clic sur icône fiche bleue

Saisie des événements :
* soit par menu Evénements/Nouvel Evénement
* soit par sélection à la souris d'un ensemble de créneaux horaires sur le planning (cliquer-sélectionner-relâcher)

Modification des événements :
* soit par clic droit sur un evénement affiché (ouvre la fiche)
* soit par cliquer-déposer sur un événement pour en changer les horaires (clic sur le milieu pour modifier le début, clic sur l'extrémité droite de l'évènement pour modifier la fin)

Rq: à chaque fiche événement on peut joindre un document (bon de livraison, fiche technique, ...) au format doc, pdf, ou autre ...

Pour chaque "ressource", un bilan d'activité est réalisable sur une période à déterminer (jours/semaines/mois/...), en totalisant les jours de la semaine et/ou week-end et/ou fériés au choix

Les données présentes sont fictives. Pour repartir sur une base vierge, il suffit de tout fermer, de supprimer le fichier TtkRSC.accdb et de ré-ouvrir ensuite le fichier RSC-Planner.xlsm

Avec cette appli, il est possible de gérer le planning d'une équipe en multi-sites, l'utilisation d'un parc de véhicules d'entreprise, l'occupation de salles de cours, les congés du personnel, les rendez-vous des commerciaux, le planning de chantiers, ...

Téléchargement de : RSC_Planner_v1.2e.zip

 

Mise à jour du 24/08/2016, version v1.2e : correction d'un défaut (suite à une remarque de Cécile)

Mise à jour du 01/08/2016, version v1.2d : correction d'un défaut (suite à une remarque de Jean-François)

Mise à jour du 20/07/2016, version v1.2c : ajout du surlignage du jour sur les pages semaine/mois/trimestre  (idée de Jean-François)

Mise à jour du 18/07/2016, version v1.2b (test) : correction d'un défaut sur la PJ d'un événement (suite à une remarque de Jean-François)

Mise à jour du 14/07/2016, version v1.2a (test) : ajout d'une vue trimestrielle (suite à la demande de Jean-François)

Mise à jour du 13/07/2016, version v1.1d : correction d'un défaut dans l'affichage du document lié à un événement (suite à la remarque de Jean-François)

Mise à jour du 12/06/2016, version v1.1c : correction d'un défaut (détecté suite à la remarque de Franck)

Mise à jour du 03/04/2016, version v1.1b : correction d'un bug d'affichage

Mise à jour du 02/04/2016, version v1.1 :

* ajout d'une page "historique des événements" (imprimable) pour chaque ressource

* autorise la "non-saisie" d'une date de fin pour un événement (ex : en cas de prêt ou d'immobilisation à terme inconnu)

 


Si l'appli correspond à vos besoins, n'oubliez pas de me laisser un commentaire!

  Pierre

Posté par tatiak à 13:42 - Applications - Commentaires [7] - Permalien [#]

08 mars 2016

Gestion Multi-Projets

L'application  "Gestion de Projet"  a une limite, celle de ne pouvoir suivre qu'un seul projet à la fois.

Pour aller plus loin dans ce thème, voici une application de gestion multi-projets.
Ainsi, pour chaque projet à suivre, vous pourrez le définir par un nom, par une courte description, et par ses différentes étapes (maximum 46).

Chacune de ces étapes pourra être caractérisée par une couleur à choisir parmi 48 teintes différentes (pour ce faire, vous cliquerez dans la colonne "Couleur")
Vous rattacherez à chacune des étapes autant d'actions que nécessaire.

Capture

Chaque action peut être définie par un classique qui-quoi-ou-quand-comment, et commentée au fur et à mesure de son avancée (objectivable elle aussi). Des documents (pdf, doc, photo, ...) pourront être reliés à chacune des actions.

L'affichage graphique propose un choix d'échelle de temps entre 1 heure et 28 jours.
Vous pourrez choisir la date à laquelle commencer le graphique pour pouvoir visualiser votre projet dans le temps.

Pour finir, l'ensemble des données est enregistré dans une base accdb ce qui vous permettra éventuellement de gérer les datas directement depuis Access. (Il n'est pas obligatoire de disposer d'une licence pour ce logiciel pour pouvoir utiliser pleinement l'application).

Téléchargement de TtkProject_v1.5h


 
* mise à jour du 23/03/2016 : v1.5b - correction de bugs - en réponse à un signalement de Tony

* mise à jour du 24/03/2016 : v1.5c - permet les actions très longues (supérieures à 1 an) - en réponse à une demande de Mickael

* mise à jour du 25/03/2016 : v1.5d - permet la modification des titres des projets

* mise à jour du 03/04/2016 : v1.5e - correction d'une anomalie - en réponse à un signalement de Mickael

* mise à jour du 10/04/2016 : v1.5f - correction de bugs - en réponse à signalements de Tony et de Mickael

* mise à jour du 19/04/2016 : v1.5g - correction d'une anomalie - en réponse à un signalement de Mickael

* mise à jour du 24/04/2016 : v1.5h - correction d'un détail - en réponse à un signalement de Mickael


Bon téléchargement
  Pierre

Posté par tatiak à 11:49 - Applications - Commentaires [4] - Permalien [#]

29 février 2016

Visualiseur Xls, Doc, Access, Txt & Images

Pour répondre à une question de NG, voici un "visualiseur" de fichiers Excel, Word, Access, Texte (.txt) et images (jpg, gif, bmp)

L'outil proposé ici permet d'avoir un visuel du contenu de vos fichiers Excel, Word, Access, texte et de vos images, dossier par dossier, pour pouvoir rapidement sélectionner et ouvrir le bon fichier sur lequel travailler.

Vous pouvez donc choisir le dossier dans lequel faire la recherche.

Pour les fichiers Excel vous choisirez  un onglet du classeur pour en visualiser les 10 premières colonnes des 15 premières lignes.

Pour les fichiers Word vous visualiserez les 15 premiers "paragraphes" du document.

Pour les fichiers Access, vous choisirez une table dans la liste pour en visualiser les 10 premières colonnes des 15 premières lignes. Pour chaque colonne, l'entête est indiquée ainsi que son type de donnée (numérique, texte, booléenne, ...)

Les fichiers images sont en "lecture simple"

Pour les fichiers Texte (.txt) non seulement vous visualiserez l'ensemble du fichier, mais vous pourrez également directement enregistrer les modifications que vous ferez dans le texte.

  Pierre

Téléchargement de : Visualiseur_XLWDACC.xlsm

Posté par tatiak à 15:39 - Excel-Base de Données - Commentaires [0] - Permalien [#]

23 février 2016

Centrer verticalement le texte d'un Label d'un Userform (Excel/word - Vba)

Centrer_Label



Pour l'esthétique de vos Userform, vous avez besoin parfois d'avoir du texte parfaitement centré dans un label.
Si dans Office, la propriété TextAlign des labels permet de positionner le texte à droite, à gauche ou au centre, il n'est pas prévu de centrage vertical.

Pour contourner cette limitation, rien de plus simple!

Avec un logiciel de dessin quelconque, vous créez une image gif de 1 x 1 pixel à fond transparent (par exemple le logiciel gratuit Photofiltre le fait très bien). Cette image, à garder dans votre bibliothèque d'images, pourra vous servir autant de fois que vous aurez besoin.

Par la suite, lors de la création de votre Userform, pour centrer verticalement le texte d'un label, il suffit d'importer cette image vide dans la propriété Picture de ce label et de positionner la propriété PicturePosition à PicturePositionCenter.
Votre texte est alors parfaitement centré et ce, quelque soit la hauteur du Label, et quelque soit la taille et le style de la police utilisée!
Pour l'alignement horizontal, il suffit d'un PicturePositionRightCenter ou PicturePositionLeftCenter et d'ajouter des espaces avant ou aprés votre intitulé (voir illustration)

Bonne création!

  Pierre

Posté par tatiak à 16:22 - Excel-Howto - Commentaires [0] - Permalien [#]

06 février 2016

Agenda sur Excel - suite

Suite au post "Agenda sur Excel" voici une nouvelle version actualisée.
Cette nouvelle version intègre de nouvelles fonctionnalités!
Il est possible désormais de modifier facilement la date et les horaires d'un évènement prévu par simple glisser/déposer!! (sur les pages jour/semaine/4jours) :

* Je clique sur un évènement en maintenant le bouton gauche appuyé et je l'emmène à la date et à l'heure de mon choix

* OU je clique vers sur le bas de l'évènement (en maintenant le bouton gauche appuyé) pour glisser jusqu'à une nouvelle heure de fin (le curseur change d'aspect lors de cet opération)

Lors de ces modifications, l'horaire modifié (début ou fin) est indiqué dans une petite fenêtre pour permettre d'être précis, et l'évènement apparaît temporairement en grisé

Par ailleurs les exports de vCard se font maintenant au standard 3.0
Et au passage quelques bugs ont été corrigés

  Pierre

Téléchargement de Agenda+ & Contacts_v1i

 

Edit du 16/02/2016:

Pour répondre à la demande de Neal, voici : AGENDA++ VERSION 2.1!

Agenda++_v2

Cette version est enrichie par :

* une TODO-LIST :
- gestion de tâches avec [U]visualisation type "Gantt"[/U] des tâches à réaliser
- historique (avec fonction de filtre et de tri) de toutes les tâches saisies
- le statut (Prévu/en Cours/réalisé) peut être modifié directement dans la liste de l'historique
- chaque tâche peut être rattachée à un projet (genre gestion de projet à minima)

* un MENU DEROULANT avec réorganisation de l'interface : toutes les opérations (Agenda, Contacts, Todo-List) peuvent se faire depuis l'agenda via ce menu

Et comme toujours, diverses améliorations de code et corrections de quelques anomalies ...

Edit du 10/04/2016 : amélioration de la TODO-LIST pour une meilleure portabilité, en réponse à Flavio

Téléchargement de Agenda++_v2.3.zip

 

Posté par tatiak à 17:03 - Applications - Commentaires [5] - Permalien [#]

19 décembre 2015

Agenda sur Excel et application Agenda+.exe

Actualisation et suite - 6 février 2016

Sur un cahier des charges de Nono1835 qui cherchait un agenda sur Excel, car ne pouvant pas installer des appli sur son PC professionnel, voici une appli d'agenda dont le visuel est calqué sur l'agenda de Google (est-ce du plagiat?).

La visualisation des évènements ou rendez-vous se fait selon 5 modes différents : journée/semaine/mois/4 jours/Planning.

Le saisie d'un évènement se fait soit par clic sur le bouton "Créer", soit par clic sur un créneau horaire libre des vues journée, semaine ou 4 jours.
Pour chaque évènement/rdv, le choix d'une couleur (parmi 11) est possible

Afin de permettre de distinguer, par exemple rendez-vous personnels et rendez-vous professionnels, il est possible de créer des catégories d'agendas différents
Pour ajouter une nouvelle catégorie, agenda "Lulu" par exemple, il suffit de saisir l'item "Lulu" dans la liste déroulante "Agenda" de la fenêtre de saisie d'un nouvel évènement/rdv

L'idée ici est de montrer comment dessiner des formes sur Userform en passant par des modules de classe.

Merci de vos commentaires
Pierre

 

Edit du 23/12/2015 : Voici une nouvelle version avec fonction d'impression (via export word). Les 2 fichiers doivent être dézippés dans un même dossier. L'export se fait en fonction de la sélection (catégorie d'agenda et période)

Téléchargement de Agenda++_v2.3.zip

 

Edit du 27/12/2015 : Pour aller plus loin voici l'appli "Agenda+ & Contacts" qui propose conjointement un agenda et une gestion des contacts qui INTERAGISSENT entre eux.
Dans les grandes lignes :

GESTION DES CONTACTS :
* Liste des contacts :
-- cette liste peut être filtrée selon noms, fonctions ou sociétés
-- les informations de cette liste peuvent être modifiées directement depuis cette liste.
-- un clic droit sur une ligne ouvre la fiche du contact

* Fiche Contact :
-- double-clic sur l'adresse mail pour écrire un mail
-- saisie possible de plusieurs n° de téléphone (fixe, portable, bureau, fax, ...), pas de limitation de nb (en théorie)
-- possibilité de lier des documents (textes, pdf, images, ...) à chaque contact
-- page "diaporama" pour visualiser une miniature des images associées au contact
-- page "Historique" pour visualiser la liste des évènements/rdv programmés avec ce contact (et ouverture de la fiche évènement/rdv par double-clic sur une ligne)


AGENDA : en plus des fonctions décrites précédemment :
* Chaque évènement/rdv de l'agenda peut être relié à une pièce jointe et/ou à un contact => clic sur "Associer"
* Si une pièce jointe + un contact sont associés au rdv, la pièce jointe est ajoutée à la liste des PJ associées au contact
* Possibilité d'envoyer un email automatisé depuis la fiche Rdv pour rappeler l'évènement/rdv au contact associé (via un simple mailto, donc quelques limites ...)

Edit du 20 janv 2016 : En réponse à JCG, voici l'appli Agenda & Contact.xlsm avec une fonction d'import/export des fiches contats au formt vCard (.vcf), ce qui permet les échanges avec Outlook ( ou autre logiciel similaires).

De cette façon :
* depuis Outlook (ou autre logiciel du même genre), on exporte ses contacts au format vCard (.vcf) dans un dossier quelconque (cf google pour la marche à suivre)
* depuis l'appli Agenda+_&_Contacts_v1b, page liste des contacts, un bouton permet d'importer les contacts en pointant simplement sur le dossier contenant les fiche vCard

et dans l'autre sens :
* depuis l'appli Agenda+_&_Contacts.xlsm, page fiche contact, un bouton permet d'exporter la fiche contact vers du vCard pour pouvoir l'importer dans Outlook (ou autre) ou pour pouvoir l'envoyer à un correspondant

Edit du 23 janv 2016 : Implémentation de la fonctionnalité "répéter uniquement sur jours ouvrés"

Téléchargement de Agenda++_v2.3.zip

 

 

Edit du 16 janv 2016 : En réponse à une demande, voici le fichier Agenda+.xlsm converti en Agenda+.exe, application Windows autonome (pour pouvoir l'utiliser sans Excel).
J'en ai profité au passage pour améliorer le code, notamment pour la gestion de la modification/suppression des évènements répétés.

Pour l'installer : le fichier joint Ag+.zip est une archive qu'il faut dézipper sur son disque dur.
A l'intérieur du dossier obtenu, vous trouverez un fichier setup qu'il faut double-cliquer pour installer Agenda+ sur son PC. Un raccourci se crée sur le bureau pour ouvrir l'appli Agenda+.

C'est garanti sans virus et si besoin ça se désinstalle comme n'importe quelle appli Windows.

Télécharger : Ag+.zip

 

Edit du 26 janv 2016 : Agenda+.exe intègre maintenant la gestion des contacts comme la version .xlsm, avec :
* la possibilité de lancer l'appli automatiquement au démarrage de Windows
* la possibilité d'avoir des rappels des prochains rendez-vous

Télécharger : Agenda+.exe.zip

Posté par tatiak à 11:16 - Applications - Commentaires [0] - Permalien [#]