Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Vba Indenter Interface v4.0a

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Statut
La discussion n'est pas ouverte à d'autres réponses

Jean BUSSER

XLDnaute Nouveau
Supporter XLD
Bonjour.
La démo étant séduisante, j'ai installé cette ressource. Mais dès le lancement d'Excel, le code VBA s'ffiche avec une erreur 1004 :
"Set bar = Application.VBE.CommandBars("Code Window")" "L'accès par programme au projet Visual Basic n'est pas fiable"
Je suis sous Windows 10, Excel 2013.
Que faire ?
Merci.
Jean
 
Merci, Cousinhub.

Ce grand débat soulève pour moi la question suivante (mais, étant incompétent et ignorant, ma question est sans doute idiote).

Que ce soit fait automatiquement ou par l'utilisateur, le résultat serait le même : il faut quelque part "désactiver un verrou de sécurité dans mon propre environnement" (PatrickToulon 12:03), condition 'sine qua non' pour que ce produit fonctionne.
Ce qui n'est dit nulle part c'est quelle est la portée de cette désactivation qui semble bien dangereuse (Valtrase 13:33 "...l'utilisateur télécharge un fichier avec un virus, son disque dur est encrypté...") : EXCEL ? OFFICE ? tout mon PC ? les 3 PC de mon réseau ? ...
 
En fait si l'utilisateur autorise l'application a géré le projet VBA il s'exposer à autoriser tout et n'importe quoi personnellement je refuse d'activités cette option.

Lorsque tu autorises l'accès au projet VBA excel t'affiche un message d'avertissement sur la dangereusité de l'action.

Lorsqu'on me demande d'écrire un code qui permet de créer dynamiquement les macros dans le projet VBA j'active temporairement l'option le temps du développement.

SI non je n'autorise les macro qu'avec approbation de façon à ne pas exécuté un programme non désiré.
 
Merci, mais cela ne répond que partiellement à ma question. Je la pose différemment : si je désactive le fameux verrou de sécurité, est-ce que toutes les macros de tous les fichiers EXCEL ne seront définitivement plus protégées ?
 
Voici une explication plus claire (par IA) de ce que l'option dont il est question ici nous protège :

Qu’est-ce que "l’accès approuvé au modèle d’objet du projet VBA" ?​


C’est une option dans les paramètres de sécurité de Microsoft Office (Excel, Word, etc.) qui, si activée, permet à une macro VBA d’avoir accès en lecture/écriture au code VBA lui-même, c’est-à-dire à son propre projet ou à ceux des autres classeurs ouverts.


Par défaut, cette option est désactivée pour éviter les abus.




⚠️ Pourquoi est-ce dangereux ?​


Parce que si cette option est activée, une macro malveillante peut :


  • Lire, modifier ou injecter du code VBA dans d’autres classeurs/documents
  • S’auto-répliquer dans d’autres fichiers
  • Échapper à la détection car elle n’utilise pas de fichiers exécutables classiques
  • Contourner certaines protections, en s’intégrant dans des documents légitimes



🧪 Exemple concret non-malveillant (à but pédagogique)​


Imaginons qu’un fichier Excel contienne la macro suivante :

VB:
Sub AutoInfect()
    Dim vbProj As Object
    Dim vbComp As Object
    Dim code As String

    ' Vérifie si l'accès au projet VBA est autorisé
    If Application.VBE.ActiveVBProject.Protection <> 1 Then

        ' Code à injecter dans un autre classeur
        code = "Sub Hello()" & vbCrLf & _
               "   MsgBox ""Bonjour depuis un autre classeur !""" & vbCrLf & _
               "End Sub"

        ' Cible : le premier classeur ouvert autre que celui-ci
        Dim wb As Workbook
        For Each wb In Workbooks
            If wb.Name <> ThisWorkbook.Name Then
                Set vbProj = wb.VBProject
                Set vbComp = vbProj.VBComponents.Add(1) ' Module standard
                vbComp.CodeModule.AddFromString code
                MsgBox "Code injecté dans " & wb.Name
                Exit For
            End If
        Next wb
    Else
        MsgBox "Accès au projet VBA non autorisé."
    End If
End Sub


📌 Ce code :


  • Injecte une simple macro dans un autre classeur ouvert
  • N’est pas malveillant ici (il affiche un message), mais la mécanique est la même qu’un virus VBA
  • Fonctionnera uniquement si l’option "Accès approuvé au modèle d'objet VBA" est activée
 
Oui, ça le désactive dans les paramètres d'Excel, donc dans tous les classeurs que tu ouvriras après.
Mais tu peux bien sûr le réactiver à tout moment (ce qui est très fortement conseillé).

Activer ce fameux verrou de sécurité (très très fortement conseillé, sauf dans des cas particuliers), ça empêche les macros VBA de modifier elles-mêmes le code VBA de ton classeur, mais ça n'empêche pas l'exécution des macros.
Note bien que le verrou de sécurité est désactivé quand la case est cochée, et donc le verrou est activé quand la case est décochée.
 
Dernière édition:
re
ca va bien plus loin que ca
ca bloque la création de simple commandbars aussi
ainsi que la manipulation du ruban fluent des versions excel modernes aussi
et bien d'autres chose encore que je n'ai plus en tête

je vous suggère de télécharger rechacker et de passer a sa moulinette le smart indenter et même certaine dll de rubberduck par exemple vous risqueriez d'être surpris

si on devait se protéger réellement
il faudrait bloquer la scrunn.dll et donc perdre tout des fonction (librairie scripting runtime)
la librairie adobd
et j'en passe et des meilleures
bref le vba serait bien insignifiant
on verrait beaucoup moins de monde sur les forum

chez moi tout est activé
quand je télécharge un fichier je bloque les macro,ouvre le fichier , regarde le code
et si tout va bien j'engage les macros

de mon expérience cette option déactivée empêche bien trop de choses

il est facile de se faire un raccourci vers l'application excel sans macro pour ouvrir ensuite un classeur obtenu par le web
 
Bonsoir le fil, le forum

ça dérive un peu trop dans ce fil, je vais faire un peu de ménage.
@Jean BUSSER , pour votre information, il aurait fallu poser votre question non pas sur le forum mais dans la ressource elle même ( onglet discussion ) puisqu'elle concernait directement l'utilisation de cette ressource,.

Bien cordialement,
 
Dernière édition:
En fait cette option est lié à Excel et non aux fichiers qu'il utilise.

En d'autres termes si tu active l'option tu l'autorises pour tous les classeurs que tu ouvriras à l'avenir.

Est-ce grave, non dans la mesure où tu as toutes confiance en la personne qui te propose un fichier.

Si je te fournis un fichier via ce site, c'est a toi seule qu'incombe la responsable d'ouvrir le fichier ou pas. C'est juste une question de confiance ou de suspicion
 
Dernière édition:
Statut
La discussion n'est pas ouverte à d'autres réponses
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
914
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…