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

XL 2013 De Excel 2013 à Excel 365

degards

XLDnaute Occasionnel
Bonjour à la communauté !!!
J’ai besoin de me faire éclairer car à mon travail on vient de migrer vers Office 365 et ce que j’ai créé avec Excel 2013 (VBA) ne fonctionne pas. Je sais que cela est causé dès qu’un utilisateur fait une sauvegarde sous Excel 365 et qu’on tente de l’ouvrir par la suite sous Excel 2013 la bibliothèque de référence Excel est en version 16 alors que quand j’ai créé mon code c’était sous la version 15.

J’ai fait des recherches un peu mais je ne comprends pas tout à fait le concept. J’ai lu qu’il fallait ajout une ligne dans mon code où j’allais inscrire quelque chose comme « createobject(« Excel.Application.15 ») mais cela ne fonctionne pas. Voici exactement ce que j’ai placé dans mon code:
Dim coucou as object
Set coucou = createobject(« Excel.Application.15 »)

On parle de early Binding et Late Binding, je suis perdu un peu. Tout ce que je veux c’est que lorsqu’une personne ouvre mon fichier que ce soit sous Excel 2013 ou Excel 365 (Car tous ne sont pas migré encore) et bien qu’il n’y ait pas d’erreur dans le code.

Merci de votre soutien

Degards
 

Staple1600

XLDnaute Barbatruc
Re

@degards
[Pour infos]
On ne joint jamais un fichier original
Surtout si il n'est pas anonymisé
(cf la feuille masquée : Liste Effectifs)
Prends le temps de faire une copie de ton classeur en l'expurgeant de tout ce qui est confidentiel
(cf la charte du forum -> point RGPD)

Dans ton classeur, il y a 15 modules VBA
Dans lequel l'erreur se produit-elle?
Dans quelle procédure ?
 

patricktoulon

XLDnaute Barbatruc
bonsoir
dans cet exemple
je crée l'application et y ouvre même un nouveau classeur
la declaration de la variable coucou peut se faire directement par le typename de l'object souhaité
en l'occurence ici "Application"
VB:
 Dim coucou As Application    'declare la variable coucou en tant qu'object application
    Set coucou = CreateObject("Excel.Application")    'on crée l'object application
    coucou.Visible = True    'on la rend visible
    coucou.Workbooks.Add    'on ajoute un nouveau classeur
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…