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 :

Classeur impossible à ouvrir


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Septembre 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 53
    Par défaut Classeur impossible à ouvrir
    Bonjour,

    Configuration
    Windows 10 (64 bits)
    Microsoft Office 2016 (32 bits)
    Une dizaine de postes installés
    Situation présente
    Un classeur interface au format xls (en local)
    Trois macros complémentaires au format xla (en local)
    Une base Microsoft Access au format mdb (sur le serveur)
    Quelques fichiers de configuration au format ini et txt (en local et sur le serveur)
    Fonctionnement
    L'utilisateur lance le classeur interface.
    Celui-ci récupère les enregistrements de la base Access et les affiche.
    Problème rencontré
    Tout fonctionnait correctement jusqu'au 20 octobre.
    Puis sur un premier poste, impossible de lancer le classeur interface
    Le curseur tourne sans arrêt et obligation de tuer la tâche Excel
    Le lendemain c'est un second poste qui tombe et un troisième.
    Aujourd'hui tous les postes sont en rade.
    Correctifs mis en oeuvre.
    Conversion du classeur interface au format xlsm
    Conversion des macros complémentaires en xlam
    Conversion de la base au format accdb
    Ce qui m'oblige à abandonner Microsoft DAO 3.6 Object Library pour Microsoft Office [XX.x] Access database engine Object Library dans les classeurs Excel.
    Autres mesures prises
    Débogage des macros complémentaires
    Aucun problème trouvé.
    Désactiver la procédure de démarrage (Workbook_Open) du classeur interface
    Le curseur continu de tourner comme si le code s'exécutait.
    L'affichage du classeur n'est pas top, avec des zones blanches, comme si l'écran ne se redessinait pas entièrement.
    Quand je met tout le code du classeur interface en commentaire
    Le classeur s'ouvre bien mais...
    Les objets (boutons, listes, cases à cocher, etc) posés sur la feuille ne sont plus à la bonne taille et se chevauchent.
    Ce n'est pas normal et c'est peut-être une piste
    .
    Références du classeur interface
    • Visual Basic For Applications
    • Microsoft Excel [XX.x] Object Library
    • OLE Automation
    • Microsoft Forms 2.0 Object Library
    • Microsoft Office [XX.x] Object Library
    • Microsoft Office [XX.x] Access database engine Object Library (pour la base Access)
    • Les 3 macros complémentaires


    Autres informations
    Les classeurs utilisent un nombre conséquent d'A.P.I. Windows.
    Conclusions
    La migration des divers classeurs ne change rien au problème.
    Empêcher l'exécution du code touches [Shift] ou [Ctrl] ne change rien, le curseur tourne toujours.
    J'ai réussi à rentrer deux fois dans le code (pourquoi ?), j'essaye d'écrire une instruction MsgBox sur WorkBook_Open
    Après avoir saisi l'instruction MsgBox j'écris une espace et là crac, j'ai le curseur qui tourne de nouveau sans s'arrêter.

    Je ne sais vraiment plus quoi faire, si quelqu'un à une idée, je suis preneur. Merci pour votre aide.

  2. #2
    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,

    la première chose, je pense, à vérifier, c'est pourquoi ceci s'est successivement produit d'un poste à l'autre.

    il serait opportun de vérifier les dernières mises à jour Windows et office déployée sur le parc :

    - contenu des MaJ
    - date d'application des MaJ sur chaque poste.

    histoire de vérifier si ça coincide, et d'agir à ce niveau ?

    Ensuite (ou au préalable), le fait d'avoir converti les Xla en Xlam a bien rompu l'appel aux anciens xla ?

  3. #3
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Les classeurs utilisent un nombre conséquent d'A.P.I. Windows
    Lesquelles ?
    En rappelant que certains sous-classements et/ou "hookings" peuvent être source de dégâts (mauvaise gestion ou arrêt non régulier -notamment depuis l'interface de VBA- ou encore arrêt par instruction END).

    Ah oui ...
    Et en espérant que d'autres classeurs que celui-ci ne "tomberont" pas, l'un après l'autre (pas forcément dans l'immédiat), dans le même cas (ce qui peut parfaitement arriver lorsque l'on s'échange entre copains des classeurs, dotés ou non de macros. )
    (j'ai déjà assisté à ce genre d'avalanche).

  4. #4
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Septembre 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 53
    Par défaut
    Bonjour,

    Merci pour votre aide.

    @joe.levrai : le fait d'avoir converti les Xla en Xlam a bien rompu l'appel aux anciens xla ?
    Je n'ai plus de référence aux xla et j'ai testé le programme sur un windows 7 et il fonctionne correctement.
    Moi aussi depuis le début, je soupçonne une mise à jour Windows ou Office, malheureusement, je n'ai pas la main sur l'administration des postes.

    Ce programme fonctionne depuis 2004 avec une petite mise à jour en 2010, il a marché dans l'environnement actuel depuis le mois de juin. Si je l'ai converti c'est pour faire taire l'entreprise qui gère l’informatique et remet en cause mon programme plutôt que les mises à jour.

    @unparia : Les classeurs utilisent un nombre conséquent d' A.P.I. Windows Lesquelles ?
    • GetUserName
    • FindWindowA
    • GetDC
    • CreateSolidBrush
    • etc.

    Elles servent essentiellement à l'affichage d'une barre de progression. De plus je n'ai jamais utilisé une instruction END dans un programme (pas propre).

    Résumé
    Ce programme fonctionnait correctement dans l'environnement actuel depuis le mois de juin. Le convertir au nouveaux format Excel ne change rien. J'en conclu que le programme n'est pas en cause.
    Vos réponses me conforte dans ma réflexion et ma question serait maintenant plutôt est-ce que quelqu'un connait une mise à jour Windows ou Office qui pose soucis avec Excel, j'ai déjà vu passé des posts de droite et de gauche qui évoque des soucis de ce genre.

    Encore merci pour votre aide efficace

  5. #5
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    1) Ce sont quelles fonctions, les "etc ..." ?
    2) que contient ton code pour en dénoncer les éventuelles erreurs rencontrées en exécution ?
    3) Et ton 2010 : en combien de bits ?

  6. #6
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Septembre 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 53
    Par défaut
    @unparia Et ton 2010 : en combien de bits ?
    Comme précisé dans le premier post en 64 bits et Office en 32 bits.

    Depuis l'autre fois, nous avons avancé. Après tests, Windows n'est pas en cause, et c'est Office 2016 qui pose soucis.

    Pour l'heure, j'ai réglé le problème en installant une version 2013 d'Excel.

    @unparia que contient ton code pour en dénoncer les éventuelles erreurs rencontrées en exécution ?
    Alors là on rentre dans du compliqué, une vrai usine à gaz.
    Il y a 3 macros complémentaires. Elles se connectent au logiciel EasyWin fabrication de menuiseries (base .DBF), une base Access par laquelle transitent des enregistrements qui sont lus et écris dans une base SAGE Gestion commerciale 100 (version I7).
    Il y a ensuite un classeur interface qui affiche les informations issues de la base Access et permet d'écrire dedans
    .
    Les macros complémentaires et le classeur interface sont installés en local (une dizaine d'utilisateurs). Les fichiers de configuration et les base EasyWin, Access et SAGE sont sur le serveur.
    .
    Il y a ensuite des services (gestion d'utilisateurs, définition de DNS, configuration de l'affichage, système d'aide, jauge d'avancement, calendrier, lecture/écriture base de registre et fichier ini, fichier log etc.)
    Pour finir, on trouve les fonctionnalités métier
    Tout est écrit en pseudo objet (modules de classe)
    Il y a trop de code pour que je puisse rentrer plus dans le détail.
    @unparia Ce sont quelles fonctions, les "etc ..." ?
    Un peu de lecture
    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
    CloseHandle
    CreatePen
    CreateSolidBrush
    DeleteObject
    ExtTextOutA
    FindWindowA
    GetClassNameA
    GetClientRect
    GetDC
    GetOpenFileName
    GetPrivateProfileInt
    GetPrivateProfileSection
    GetPrivateProfileSectionNames
    GetPrivateProfileString
    GetPrivateProfileStringA
    GetSysColor
    GetTextExtentPointA
    GetUserName
    GetWindow
    PatBlt
    Rectangle
    RegCloseKey
    RegConnectRegistry
    RegCreateKey
    RegDeleteKey
    RegDeleteValue
    RegEnumKey
    RegEnumValue
    RegOpenKeyEx
    RegQueryValueEx
    RegSetValueEx
    ReleaseDC
    SelectObject
    SetBkColor
    SetTextColor
    SHBrowseForFolder
    SHGetPathFromIDList
    WritePrivateProfileSection
    WritePrivateProfileString
    WritePrivateProfileStringA
    J'attends de la part de la société qui gère l'informatique, la liste des mises à jour d'office effectuées récemment.

Discussions similaires

  1. impossible ouvrir ou modifier formulaire
    Par eddy37fr dans le forum IHM
    Réponses: 6
    Dernier message: 01/04/2008, 21h13
  2. Réponses: 4
    Dernier message: 14/01/2008, 18h04
  3. impossible ouvrir page avec target=_ blank
    Par EE dans le forum ASP.NET
    Réponses: 3
    Dernier message: 11/09/2007, 23h45
  4. vbproj impossible à ouvrir
    Par SorcierGris dans le forum Visual Studio
    Réponses: 2
    Dernier message: 05/12/2006, 17h37

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