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 :

Télécharger un fichier excel sous teams en vb


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Juillet 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2018
    Messages : 6
    Par défaut Télécharger un fichier excel sous teams en vb
    Bonjour,

    J'ai trouvé quelques lignes de code me permettant de télécharger un fichier Excel sous team. Le soucis est que je ne peux pas ouvrir ce fichier qui a été téléchargé sur mon poste. Message : "format ou extension non valide."

    Je ne vois pas ce qui cloche.

    Quelqu'un pourrait-il m'éclairer ?

    Merci

    Voici mon code :

    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
    Option Explicit
     
    Private Declare Function URLDownloadToFile Lib "urlmon" Alias _
                                               "URLDownloadToFileA" ( _
                                               ByVal pCaller As Long, _
                                               ByVal szURL As String, _
                                               ByVal szFileName As String, _
                                               ByVal dwReserved As Long, _
                                               ByVal lpfnCB As Long) As Long
     
     
    Sub recaplot1()
     
     
        Dim CheminDestination As String
        Dim ValeurRetour As Long
     
        'l'adresse url du fichier sur Sharepoint
        Const URLSharePoint As String = "https://liensharepoint/Seclin du jour.xlsx"
     
        'chemin et le nom de la destination
        CheminDestination = "C:\Macro\Seclin du jour.xlsx"
     
        'lance le téléchargement
        ValeurRetour = URLDownloadToFile(0, URLSharePoint, CheminDestination, 0, 0)
     
    End sub

  2. #2
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Juillet 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2018
    Messages : 6
    Par défaut
    Finalement j'ai contourné mon soucis. Je ne télécharge plus le fichier.

    Par contre je ne trouve aucune commande sur le net permettant de publier des fichiers sous teams en vba excel.

    Quelqu'un pourrait-il m'aider ?

    Merci


    Bonne journée

  3. #3
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Bonjour Fabien,

    je m'attaque à un problème similaire dans le cadre d'une étude de faisabilité.

    Il apparaitrait que ca se découpe en 3 étapes :
    - enregistrer le classeur sur ton SharePoint
    - publier le classeur sur ton SharePoint
    - écrire un message ou mettre une piece jointe


    La piste du moment est la suivante
    https://docs.microsoft.com/fr-fr/graph/use-the-api

    Si jamais j'arrive à quelque chose de probant, je te tiens informé.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Ca me conforte dans l'idée que Teams est une merde infâme.

    Dans l'école de mon épouse, ils avaient des fichiers Excel sur sharepoint, et on savait créer un chemin dans l'explorateur vers le sharepoint... Du coup, on pouvait travailler les fichiers en VBA comme s'ils étaient locaux.

    Avec Teams, c'est fini, apparemment.

    Et dire qu'il paraît que ça améliore "l'expérience utilisateur"...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    désolé du déterrage, je viens de répondre à un sujet similaire et cette discussion non résolue était en suggestion.


    Ici, une méthode pour ouvrir un fichier déposé sous Teams : https://www.developpez.net/forums/d2.../#post11677752

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut Joe,

    Merci pour ce suivi

    J'espère juste que ça se passe bien niveau versioning, mais je ne sais pas pourquoi, j'ai un doute à ce sujet...

    Autrement dit: Si quelqu'un modifie le fichier dans Teams via Teams et que quelqu'un l'ouvre en local en VBA, je pense que ça va bien merder.

    Perso, je serais pour considérer qu'un excel Teams est simplement un fichier contenant des tableaux structurés permettant la saisie des données, et que ce fichier nourrira un fichier d'analyse au travers d'une récupération (VBA ou Power Query (??) )
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  7. #7
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour Pierre,

    les modifications réalisées Online (Sharepoint ou Teams) se propagent automatiquement sur le fichier stocké, car c'est en fait physiquement un seul et même fichier partagé

    Tu m'as mis le doute (faible doute, car sinon j'aurai eu des problèmes depuis pas mal de temps ), mais je viens de tester :

    1) ouverture du fichier sur Teams Online
    2) J'ai ajouté une connerie
    3) Appel du fichier depuis VBA Excel (en utilisant l'URL Sharepoint récupérée via la méthode proposée dans mon lien)

    ça s'ouvre bien avec la modification, et côté Sharepoint j'ai bien une incrémentation du Versionning

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par joe.levrai Voir le message
    [...]
    les modifications réalisées Online (Sharepoint ou Teams) se propagent automatiquement sur le fichier stocké, car c'est en fait physiquement un seul et même fichier partagé [...]
    Oui, ça je sais. Si ce n'était pas le cas, ce serait catastrophique.

    C'est dans l'autre sens que le doute m'habite...

    Une modification faite par le VBA alors que le fichier est modifié dans Teams au travers de l'application. Je serais pour ma part extrêmement prudent avec des manips de ce genre (en cas de téléscopage*, par exemple) car je doute que les mécanismes de verrous gèrent les modifs apportées en VBA.

    * Si un code vba est en train de modifier une ligne d'un tableau (par exemple en "forçant" un tri) alors que dans Teams on modifie la ligne. Suis pas certain que j'ai envie de devoir remettre le fichier en ordre par la suite
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  9. #9
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Effectivement, on va avoir un conflit à l'enregistrement : on garde nos modifs ou les modifs déjà adressées au serveur par la modification dans Teams.

    Mais cela est également déjà le cas avec Sharepoint, on modifie sur un Excel en lourd via VBA alors qu'un utilisateur a le documents ouvert en modification online.

    Il n'y aura jamais de solution idéale, chacune aura ses inconvénients (désactiver le online par exemple)

    Après, certains construisent des bazookas pour zieuter les utilisateurs online mais c'est uniquement sur les versions office 365 il me semble.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    C'est pour cela que je préconise que les fichiers Excel "online" ne soient que des conteneurs de données au travers de tableaux structurés, et que le traitement des données soit réalisé sur un fichier Excel qui récupère les données du fichier Online (par power query ou vba). C'est également le cas avec Power Apps.

    J'ai développé quelques solutions Power Apps chez des clients, et l'application alimente simplement des tableaux structurés du fichier online. En Backend, je récupère les données du fichier dans un fichier d'analyse qui contient les TCD, le VBA, les formules, etc...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

Discussions similaires

  1. PB importation classeur excel sous access 2003
    Par techinfo37 dans le forum Access
    Réponses: 6
    Dernier message: 04/10/2005, 20h41
  2. Gerer les message d'excel sous delphi
    Par Yphon dans le forum Langage
    Réponses: 5
    Dernier message: 27/09/2005, 15h33
  3. Pilotage ole d'excel sous bcb6 -> AutoFilter
    Par GameOver dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/04/2005, 11h56
  4. Petit prob avec l'OLE EXCELL sous builder
    Par vladi dans le forum C++Builder
    Réponses: 2
    Dernier message: 10/03/2005, 19h30
  5. recuperer du excel sous postgres ?
    Par in dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 09/01/2004, 10h58

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