Incompatibilité Userform entre Excel 2007 et Excel 2013 ? [Résolu]

Signaler
Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
-
Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
-
Bonjour,

Un utilisateur a essayé d'ouvrir avec Excel 2013 et W8.1 un fichier conçu sous Excel 2007 et W7 qui comporte des userforms et apparemment le fichier ne s'ouvre pas.

Malheureusement, je n'ai que Excel 2007 et je ne peux pas faire des essais. Avez-vous déjà eu ce genre de problème, que peut-on faire pour le contourner?

Merci d'avance.

Carlvb

6 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Bonjour,
Je possède également 2007 et n'ai pas le 2013.
Ma première réaction : Excel 2013 devrait savoir se débrouiller pour ouvrir en version inférieure.
Un problème peut par contre se poser entre W8.1 et W7, si certains des composants utilisés par ton classeur ne sont pas compatibles avec W8.1


Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
7
Bonjour ucfoutu,

Merci de ta réponse. C'est l'userform qui semble poser problème car il peut apparemment ouvrir les versions sans userform.

Je me suis également dit comme toi que ce genre de problème ne devrait se poser que si l'on porte un fichier vers une version antérieure.

A plus tard.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Ah !
Questions qui viennent donc à l'esprit :
1) quels composants contient cet Userform ?
2) quelles fonctions autres que celles de VBA/Excel y sont utilisées ?
Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
7
Les fichiers incriminés sont joints ici http://cjoint.com/?EDxvFw0d7kN

Par rapport à tes question :

1) A part les contrôles de base (label, textbox, listbox, Frame, Commandbutton, scrollbar) j'utilise un module de classe basé sur un label. Justement j'ai essayé de ne pas utiliser pas de contrôles "exotiques" pour privilégier la compatibilité (par rapport à Excel 2003 dans ma tête).

2) Les fonctions utilisées sont aussi celles qui sont fournies de base dans VBA/Excel. Pas de private declare, ni de référence externe.

A plus tard.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
C'est vraiment étrange.
As-tu essayé de voir sur la machine WIN8 si les références cochées sont celles attendues ? (et de supprimer, s'il y en a, les références manquantes) ?
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Sur la win8 en cause : outils - références :
Regarde, parmi les cochées, celles qui pointent vers system32.
Essaye, pour voir, ce qu'il se passe en pointant les mêmeS (bouton parcourir) sur syswow64

Edit : et si déjà vers syswow64, tente l'inverse (vers system32).



________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
7
Merci pour cette piste que je vais communiquer à l'utilisateur (on discute à distance)

Je te tiendrai au courant. Je vais également tenter de l'emmener directement ici. Ce sera plus facile je pense.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
227
Pendant que tu l'as au téléphone : demande lui si, par hasard, il n'aurait pas une différence de nb de bits entre son os et sa version de Excel.
Messages postés
199
Date d'inscription
mercredi 23 avril 2003
Statut
Contributeur
Dernière intervention
25 mai 2017
7
Bonjour,

Avec un peu de retard, il semble que ce ne soit pas l'userform qui pose problème mais plutôt la réduction de la fenêtre Excel à l'ouverture de l'userform.

J'ai fait un essai sur une autre machine et en supprimant le code suivant, le fichier s'exécute normalement.

Private Sub Workbook_Open()
    'Réduction de la fenêtre Excel et ouverture de l'userform
    With Application
        .WindowState = xlNormal
        .Height = 1
        .Width = 1
        .Top = 1
        .Left = 1
    End With
    Formulaire_Principal.Show vbModeless
End Sub


Merci.