Microsoft 365 Déclaration des variables dans Office 365

Amilo

XLDnaute Accro
Bonjour le forum,

Dans la continuité de mes précédents fils, j'ai rencontré un autre souci dans un code VBA suite à notre migration vers Office 365,
J'ai réussi à le résoudre seul mais il y a quelques zones d'ombres que je n'explique pas.

J'ai un petit code affecté à un bouton de commande qui permet de transférer des données d'une feuille à une autre d'un même classeur
Lorsque que je clique sur le bouton, j'avais un message d'erreur "Erreur de compilation, Projet ou bibliothèque introuvable"
J'ai essayé à tout hasard de déclarer toutes les variables (4 en tout) et là miracle tout fonctionnait…

Pourtant, la case "Déclaration des variables obligatoires" est décochée dans les options VBE,

Est-ce que les déclarations sont obligatoires dans Office 365 quelque soit l'option cochée ?

Sinon, lorsque j'ai déclaré les variables, j'ai essayé d'abord de spécifier le type des données,
Certains posant un problème avec un message "Objet requis", j'ai alors déclaré sans les types.

Par exemple Dim MaVariable As String posait problème pour une variable définissant la plage d'arrivée des données à coller sur la nouvelle feuille

Sinon quel serait le type exact à utiliser ?

Pour le coup, j'ai indiqué simplement : Dim MaVariable
Est-ce que Dim MaVariable As Variant équivaut à Dim MaVariable ?

Merci d'avance pour ces éclairages ?

Cordialement
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonsoir.
Il y a vraisemblablement des références portées MANQUANT dans la liste. Les décocher avant tout.
Ne pas typer explicitement les variables objets entraine toujours des liaisons tardives, ce qui est très légèrement plus lent que les liaisons anticipées et empêche toute assistance par proposition de listes de membres lors de la programmation.
 
Dernière édition:

Amilo

XLDnaute Accro
Bonsoir Dranreb :),

Merci pour votre réponse,
Je n'ai pas fait le lien avec les références en statut "MAQUANT" mais effectivement je sais que j'en ai croisé au moins 1 dans la bibliothèque.
C'est bon à savoir.
Je me suis déconnecté de mon PC de bureau mais je testerai à l'occasion

Bonne soirée
 
Dernière édition:
C

Compte Supprimé 979

Guest
Bonjour Amilo, Dranreb 😉

Pour info, il n'y a pas lieu de rencontrer des soucis lors d'une migration à O365 🤔

Sauf si on a développé en "Early binding" et que l'on a coché des références à des bibliothèques ou que l'on a fait du mauvais dev. (ce qui semble être le cas ici)

Quand je lis "Pourtant, la case "Déclaration des variables obligatoires" est décochée dans les options VBE"... c'est justement l'erreur à ne pas commettre 🤮
La déclaration de variables est à mes yeux une obligation si l'on ne veut pas être embêté par la suite...

Quand je lis "Par exemple Dim MaVariable As String posait problème pour une variable définissant la plage d'arrivée des données à coller sur la nouvelle feuille" 😱
Il va falloir revoir les base de la programmation, a lire : https://docs.microsoft.com/fr-fr/office/vba/language/concepts/getting-started/declaring-variables

😉
 

Amilo

XLDnaute Accro
Bonjour BrunoM45,

Merci pour votre réponse et le lien. Cela répond aux autres questions que je me posais sur les déclarations de variables et les types de données.
Sinon, effectivement l'activation de l'option des déclarations des variables est fortement recommandée. Pour ma part, j'avance à tâtons en VBA :),

Vous avez raison aussi de penser que la migration vers Office 365 n'a pas lieu de poser problème. Je comprends mieux à présent l'origine des 2 ou 3 petits soucis que j'ai rencontrés à travers les réponses que j'ai eues sur le forum. Ces problèmes étaient finalement sans rapport avec Office 365
Merci encore

Bonne journée
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 193
Membres
102 810
dernier inscrit
mohammedaminelahbali