Creer une classe fille de l'objet Range dans Excel

Fermé
mcollenne Messages postés 1 Date d'inscription mardi 12 juin 2018 Statut Membre Dernière intervention 12 juin 2018 - 12 juin 2018 à 22:13
Kalissi Messages postés 218 Date d'inscription jeudi 2 mai 2013 Statut Membre Dernière intervention 15 juillet 2019 - 19 juin 2018 à 19:04
Bonjour,

Je souhaiterai pouvoir attribuer à chaque cellule de ma feuille Excel un paramètre pouvant prendre 3 valeurs:

- DROP pour remplacer la valeur de cette cellule par la donnée de la base Access correspondante à chaque ouverture du fichier Excel.
- FEED pour updater la valeur de la base de données Access correspondante à chaque fermeture du fichier Excel, en la remplaçant par la valeur contenue dans la cellule du fichier Excel.
- LOCAL pour ne rien faire sur cette cellule Excel (elle sera en fait "déconnectée" de la base Access).

L'idée la plus simple serait de créer une classe fille de l'objet Range, à laquelle on ajouterai un paramètre sous la forme d'une énumération (DROP, FEED, LOCAL et même d'autres valeurs ultérieures que je n'ai pas encore clairement définies). Ce serait par exemple une nouvelle classe X_RANGE.

Je pourrais ensuite redéfinir toutes mes méthodes pour qu'elles acceptent la classe X_RANGE en paramètre, en plus de la classe RANGE. Ca demanderai ainsi un minimum de modifications.

Seulement je ne sais pas si l'on peut hériter d'une classe comme Workbook, Worksheet ou Range et si oui, comment faire?

D'avance merci pour votre contribution.
A voir également:

1 réponse

Kalissi Messages postés 218 Date d'inscription jeudi 2 mai 2013 Statut Membre Dernière intervention 15 juillet 2019 20
19 juin 2018 à 19:04
Bonjour,

Les modules de classe sous VBA sont relativement fastidieux à construire
par rapport aux objets dérivés sous VB.NET, mais oui c'est faisable.

Recommandation : Effectuer une bonne encapsulation de ta solution.
(i.e. définir à l'avance les propriétés et les relations entre chaque avant d'introduire les modules de classe).

K
0