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 Excel] BackgroundQuery et protection de la feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut [VBA Excel] BackgroundQuery et protection de la feuille
    Bonjour,

    J'ai une feuille protégée par un mot de passe et celà fait planter ma macro qui va ouvrir une page Web pour récupérer des informations (fichier .csv).
    L'erreur est 1004 et c'est sur .Refresh BackgroundQuery:=False.

    Quelqu'un sait comment je peux ne pas protéger cette propriété ?

    Voici le code de ma fonction :
    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
    With Me.QueryTables.Add(Connection:="TEXT;" & "http://xxxxxxxxxxxxxxxx", _
                Destination:=Range(Chr(64 + ValeursTemp_colonne) & ValeursTemp_ligne))
                    .Name = "Temporary_data"
                    .FieldNames = False
                    .RowNumbers = False
                    .FillAdjacentFormulas = True
                    .PreserveFormatting = True
                    .RefreshOnFileOpen = False
                    .RefreshStyle = xlOverwriteCells
                    .SavePassword = False
                    .SaveData = True
                    .AdjustColumnWidth = False
                    .RefreshPeriod = 0
                    .TextFilePromptOnRefresh = False
                    .TextFileStartRow = 1
                    .TextFileParseType = xlDelimited
                    .TextFileTextQualifier = xlTextQualifierDoubleQuote
                    .TextFileConsecutiveDelimiter = False
                    .TextFileTabDelimiter = False
                    .TextFileSemicolonDelimiter = False
                    .TextFileCommaDelimiter = True
                    .TextFileSpaceDelimiter = False
                    .TextFileColumnDataTypes = Array(1, 1, 1, 1)
                    .Refresh BackgroundQuery:=False
                End With
    Merci beaucoup,
    Worldofdada

  2. #2
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Salut,
    Ce que tu peux faire, c'est "dé-protéger" ta feuille juste avant cette opération, et la "re-protéger" après.
    Je n'ai plus le code en tête, mais fais une recherche sur le forum, le code pour faire ça a été donné il n'y a pas très longtemps (en 2005, quand même... )

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut
    Ca marche ca mais je voulais savoir s'il n'y avait pas une autre possibilité c'est à dire de ne pas protéger ce "truc" afin d'éviter de stoker le mot de passe.

    Pour info, les commandes pour locker - unlocker sont :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveWorkbook.Protect Password:="pass"
    ActiveWorkbook.Unprotect Password:="pass"

  4. #4
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Ok, je retente ma chance:
    dans le menu "Outils, Protection", tu as "Permettre aux utilisateurs de modifier des plages".
    Je ne pense pas que ça convienne (même si je ne sais pas exactement ce que tu veux faire), mais jette un oeil dessus.
    Sinon, l'intérêt de protéger une feuille, c'est bien de ne pas pouvoir y toucher. Alors sans mettre le mot de passe quelque part...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 132
    Par défaut
    Ma protection fonctionne bien pour les cellules par contre, je ne veux pas protéger l'objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Refresh BackgroundQuery:=False
    et je ne sais pas comment faire

Discussions similaires

  1. vba excel : insertion d image gif dans feuille excel
    Par chamus dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/01/2007, 13h16
  2. Réponses: 5
    Dernier message: 23/11/2006, 15h52
  3. Réponses: 6
    Dernier message: 20/09/2006, 14h07
  4. [VBA-Excel]Empecher l'insertion d'une feuille par le clic droit
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/09/2006, 11h10
  5. [VBA][Excel] Tester l'existence d'une feuille
    Par titflocon dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/11/2005, 14h49

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