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

Excel Discussion :

Problème avec VBA quand le fichier est en mode partagé ?


Sujet :

Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut Problème avec VBA quand le fichier est en mode partagé ?
    Bonjour,

    j'ai défini des fonctions et procédures événementielles VBA dans un fichier Excel. Tout fonctionne correctement, sauf quand je partage le fichier sur un réseau. Après recherche sur internet, certains disent que VBA ne marcherait pas quand le fichier est en mode partagé. Or certaines parties de mon code VBA fonctionne bien en mode partagé, le premier endroit où ça bloque, c'est au niveau du code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With Worksheets("Saisie des projets").Cells(ligne, 8).Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:=listeP
    End With
    Connaissez-vous les fonctions VBA incompatible en mode partagé ? Avez-vous une idée pour contourner le problème ci-dessus ? (Je veux définir une liste déroulante à partir des mots contenus dans la variable "listeP".)

    Merci.

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonsoir


    je n'ai pas retrouvé le lien sur le site Microsoft mais voici un extrait de l'article :

    Restrictions liées aux classeurs partagés
    Certaines fonctionnalités de Microsoft Excel ne sont plus disponibles lorsque vous utilisez un classeur partagé. Si toutefois vous en avez besoin, utilisez-les avant de partager le classeur ou retirez celui-ci de l'utilisation partagée. Pour plus d'informations, cliquez sur .

    Dans un classeur partagé, il est impossible de :

    Cellules
    Fusionner des cellules, mais vous pouvez afficher des cellules fusionnées avant le partage du classeur.
    Insérer ou supprimer des blocs de cellules mais vous pouvez insérer ou supprimer des lignes et des colonnes entières.



    Feuilles de calcul, boîtes de dialogue et menus
    Supprimer des feuilles de calcul.
    Modifier des boîtes de dialogue ou des menus.


    Mises en forme conditionnelles et validation de données
    Définir ou appliquer des mises en forme conditionnelles, mais vous pouvez visualiser les effets des formats conditionnels appliqués avant le partage du classeur.
    Définir ou modifier les restrictions de validation de données ainsi que les messages, mais vous pouvez visualiser les conséquences des restrictions et des messages définis avant le partage du classeur.


    Objets, graphiques, images et liens hypertexte
    Insérer ou modifier des graphiques, des images, des objets ou des liens hypertexte.
    Utiliser les outils de dessin.


    Mots de passe
    Attribuer un mot de passe pour protéger des feuilles de calcul individuelles ou le classeur entier. La protection appliquée avant le partage du classeur reste effective après le partage.
    Modifier ou supprimer des mots de passe. Les mots de passe que vous affectez avant de partager le classeur demeurent en vigueur une fois que celui-ci est partagé.


    Scénarios
    Enregistrer, afficher ou modifier des scénarios.


    Plans, groupes et sous-totaux
    Grouper les données ou les structurer sous forme de plan.
    Insérer des sous-totaux automatiques.


    Tables de données et tableaux croisés dynamiques
    Créer des tables de données.
    Créer des tableaux croisés dynamiques ou modifier leur présentation.


    Macros
    Écrire, modifier, afficher, enregistrer ou affecter des macros.
    Toutefois, vous pouvez enregistrer dans une macro des opérations effectuées dans un classeur partagé ; enregistrez la macro dans un autre classeur non partagé.
    Dans un classeur partagé, vous pouvez exécuter des macros créées avant le partage du classeur ; cependant, si vous exécutez une macro incluant une opération non disponible, celle-ci interrompt la macro.



    bonne soirée
    michel

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Bonjour et merci,

    il est donc impossible de "Définir ou modifier les restrictions de validation de données ainsi que les messages", ce qui explique que ma macro qui devait définir une liste de choix déroulante a échoué. Connaissez-vous une solution pour contourner ce problème ?

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonjour


    Connaissez-vous une solution pour contourner ce problème ?
    La seule solution consiste à enlever le partage provisoirement, le temps d'effectuer tes modifications mais cela signifie que tu perdras tous les autres avantages du partage:

    * Les modifications en cours qui n'ont pas été enregistrées par les autres utilisateurs seront perdues.
    * L'historique des modifications sera effacé. tu devras donc créer préalablement une sauvegarde de l'historique.


    Par exemple
    Comment protéger une feuille dans un classeur déjà partagé ?



    bonne journée
    michel

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par SilkyRoad Voir le message

    La seule solution consiste à enlever le partage provisoirement, le temps d'effectuer tes modifications mais cela signifie que tu perdras tous les autres avantages du partage:

    * Les modifications en cours qui n'ont pas été enregistrées par les autres utilisateurs seront perdues.
    * L'historique des modifications sera effacé. tu devras donc créer préalablement une sauvegarde de l'historique.

    l
    Ah oui, c'est très génant parce que ce fichier est utilisé par une dizaine de personnes et la simplicité est un critère important. Cette manip prend du temps et peut engendrer des erreurs si elle est mal faite. J'ai cherché sur internet : il semblerait qu'on peut créer en vba des combobox pour avoir une liste déroulante. J'espère que cette solution est valable en mode partagé...

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    Restrictions liées aux classeurs partagés
    ...
    Objets, graphiques, images et liens hypertexte
    Insérer ou modifier des graphiques, des images, des objets ou des liens hypertexte.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Silkyroad, merci pour tes réponses. Une dernière question : est-ce qu'en séparant le code VBA et en le mettant dans un fichier .xla, ça pourrait marcher ? (Si cette solution ne marche pas, il faudrait que je ne partage pas le fichier, les gens ne pourront pas le modifier en même temps, mais au moins il y aura toutes les fonctionnalités.)

  8. #8
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Points : 20 144
    Points
    20 144
    Par défaut
    bonsoir

    est-ce qu'en séparant le code VBA et en le mettant dans un fichier .xla, ça pourrait marcher ?
    ça ne changera rien car la limitation est due à l'action sur le classeur partagé et non au code VBA par lui même.


    bonne soirée
    michel

Discussions similaires

  1. [2.x] Problème upload image quand le fichier n'est pas spécifié
    Par simnitch dans le forum Symfony
    Réponses: 4
    Dernier message: 01/04/2014, 18h21
  2. [VBA-E][debutant] Problème avec l'ouverture de fichiers .INI
    Par Masmeta dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/03/2007, 08h36
  3. Problème avec un div qui n'est pas pris en compte
    Par boss_gama dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 25/07/2006, 16h32
  4. Problème avec enregistrement d'un fichier
    Par vdumont dans le forum C++
    Réponses: 3
    Dernier message: 17/05/2006, 16h08
  5. problème avec VBA
    Par Delph dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2002, 13h15

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