IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA et le Calendrier Google


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 14
    Par défaut VBA et le Calendrier Google
    bonjour à tous,
    voilà, j'aurais besoin d'entrer dans mon calendrier google des événements contenus dans une feuille excel.
    j'arrive à exporter vers un fichier CSV, mais l'import dans google doit alors se faire "à la mano" ;
    j'aimerais automatiser ça au maximum ;
    j'ai bien sur cherché sur le net, mais je n'ai pas trouvé grand'chose, si ce n'est qu'il fallait utiliser la bibliothèque msxml3.dll.
    une page me semblait intéressante : bbil.developpez.com/tutoriel/vb/vb6-google-calendar/
    mais elle me renvoie à http://vb.developpez.com/cours/, peut être a-t-elle été déplacée, ou supprimée ?
    les exemples ne sont pas légion, et je suis un rien bloqué ;
    auriez-vous une doc à ce sujet, quelque chose qui explique bien comment ça fonctionne, et que je puisse appliquer à mon cas ?
    merci d'avance pour vos lumières

    ah oui : j'utilise vba, et ne connais rien en php, java, .... (un p'tit rigolo, quoi ...)

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 14
    Par défaut
    personne n'a d'idée là-dessus ?
    je fouille depuis hier, et ai trouvé le code suivant, mais ça ne fonctionne pas ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    Sub GOOGLEAGENDA()
    Dim objHTTP As XMLHTTP
    '================================== PARAMETRES GOOGLE AGENDA ==================================
    Email = "toto@gmail.com"
    Passwd = "MonPassWd"
    'authUrl = "https://www.google.com/accounts/ClientLogin"
    authUrl = "https://accounts.google.com/ServiceLogin"
    CALENDARURL = "http://www.google.com/calendar/feeds/default/private/full"
    LIEU = "CHEZ MOI"
    sujet = "test vba google agenda"
    DESCRIPTIONRDV = "test description"
    NOMINVITE = "toto"
    MAILINVITE = "toto@gmail.com"
    DATEDEDEBUT = "2016-01-22T15:00:00.000Z"
    DATEDEFIN = "2016-01-22T17:00:00.000Z"
     
     
    '================================== CREATION D'UN EVENEMENT ==================================
    calendarEntry = "<?xml version='1.0' ?><entry xmlns='http://www.w3.org/2005/Atom' " _
    & "xmlns:gd='http://schemas.google.com/g/2005'>" _
    & "<category scheme='http://schemas.google.com/g/2005#kind' " _
    & "term='http://schemas.google.com/g/2005#event'></category>" _
    & "<title type='text'>" & sujet & "</title>" _
    & "<content type='text'>" & DESCRIPTIONRDV & "</content>" _
    & "<author>" _
    & "<name>" & NOMINVITE & "</name>" _
    & "<email>" & MAILINVITE & "</email>" _
    & "</author>" _
    & "<gd:transparency " _
    & "value='http://schemas.google.com/g/2005#event.opaque'>" _
    & "</gd:transparency>" _
    & "<gd:eventStatus " _
    & "value='http://schemas.google.com/g/2005#event.confirmed'>" _
    & "</gd:eventStatus>" _
    & "<gd:where valueString='" & LIEU & "'></gd:where>" _
    & "<gd:when startTime='" & DATEDEDEBUT & "' " _
    & "endTime='" & DATEDEFIN & "'></gd:when>" _
    & "</entry>"
     
    '================================== AUTHENTIFICATION ==================================
    Set objHTTP = CreateObject("Microsoft.XMLHTTP")
    Debug.Print authUrl
    objHTTP.Open "POST", authUrl, False
    objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    objHTTP.send "Email=" + Email + "&Passwd=" + Passwd + "&service=cl&source=Gulp-CalGulp-1.05"
    strAuthTokens = objHTTP.responseText
    Debug.Print strAuthTokens
    Debug.Print objHTTP.Status, objHTTP.statusText
    strAuthTokens = Replace(strAuthTokens, vbCr, "")
    strAuthTokens = Replace(strAuthTokens, vbLf, "")
    strAuthTokens = Replace(strAuthTokens, vbCrLf, "")
    strAuthTokens = Replace(strAuthTokens, "SID", "&SID", 1, 1)
    strAuthTokens = Replace(strAuthTokens, "LSID", "&LSID")
    strAuthTokens = Replace(strAuthTokens, "Auth", "&Auth")
    strAuthTokens = Right(strAuthTokens, Len(strAuthTokens) - Len("Auth=") - InStr(strAuthTokens, "Auth=") + 1)
    Debug.Print strAuthTokens
    Set objHTTP = Nothing
     
    '================================== REDIRECT ==================================
    Set objHTTP = CreateObject("Microsoft.XMLHTTP")
     
    With objHTTP
        .Open "POST", CALENDARURL, False
        .setRequestHeader "Content-Type", "application/atom+xml"
        .setRequestHeader "X-If-No-Redirect", "True"
        .setRequestHeader "Authorization", "GoogleLogin auth=" & strAuthTokens
        .send calendarEntry
        Debug.Print .Status
        If .Status = 201 Then
            MsgBox "Event saved"
        Else
            MsgBox "marche pas - " & .statusText
        End If
    End With
     
    End Sub

  3. #3
    Nouveau candidat au Club
    Femme Profil pro
    Urbaniste
    Inscrit en
    Mars 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2016
    Messages : 3
    Par défaut
    hello,

    as tu avancé , j'ai trouvé cela : http://sites.google.com/site/pageabbil/home/goocalendar , mais je comprends rien

  4. #4
    Membre éclairé Avatar de GADENSEB
    Homme Profil pro
    Responsable Administratif et Financier
    Inscrit en
    Mars 2014
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable Administratif et Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2014
    Messages : 569
    Par défaut
    hello
    goocalendar !!!
    Tu as pu avancer dessus ?

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Décembre 2012
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2012
    Messages : 14
    Par défaut
    bonjour,
    non, je n'ai pas trouvé de solution simple ; le code que j'avais initialement trouvé fonctionnait pour une ancienne version de google calendar, avec l'actuelle c'est beaucoup plus compliqué !
    du coup, je me suis contenté d'un export en csv, que j'importe ensuite "à la mano" dans mon calendrier google ....
    par hyper satisfaisant, mais ça fonctionne ...

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo