Comment à partir de visual basic, prendre possession de excel, se créer un formulaire, y ajouter un bouton et capter l'événe

Soyez le premier à donner votre avis sur cette source.

Vue 25 199 fois - Téléchargée 2 758 fois


Description

Cette application prend possession de Excel en VB et ouvre un classeur en y ajoutant un formulaire vba. Dans ce formulaire on y ajoutera un bouton. Sur ce bouton on gérera l'événement clik. Lors de la fermeture du classeur, les macros sont supprimé le classeur est sauvegardé. Le tout est pour démontrer que l'on peut gérer les macros dynamiquement à partir de VB pour aider l'éditeur, ajouter des outils (macro) à ses fichiers excel, ensuite les supprimer et ouvrir ce même fichier par la suite sans qu'il ne contiennent les macros d'édition.

Conclusion :


Cette application sera mise à jour si vous avez des questions... J'ai terminé mon aplication donc j'ai exploré toutes les zones problèmatique de cette approche. Je peux donc répondre à vos questions si c'est nécessaire.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

misterVe
Messages postés
6
Date d'inscription
lundi 10 janvier 2005
Statut
Membre
Dernière intervention
30 janvier 2008
-
Bonjour,

Est il possible de faire la même chose avec VBA?
J'aimerai en effet faire une sorte de patcheur pour des classeurs à envoyer à des clients et j'aimerai éviter d'avoir à coller le même code dans chacun des classeurs concernés...
Renfield
Messages postés
17280
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
21 juillet 2019
57 -
Effectivement, ces antivirus sont bien stupides.

je suis exactement dans le même cas avec l'un de mes programmes...

dès que j'ajoute la ligne de code :
voMember.Collection.Parent.DeleteLines vnStart, vnLineCount

je ne peux plus sauvegarder mon fichier sous peine d'être illico traîné au pilori.
d'ailleurs, même si cette ligne est en commentaires, l'antivirus tire à boulets rouges...


Je me suis dit : "Je vais utiliser CallByName"
CallByName voMember.Collection.Parent, "DeleteLines", VbMethod, vnStart, vnLineCount

verdict identique...

j'ai trouvé une parade :

CallByName voMember.Collection.Parent, "D" & "eleteLines", VbMethod, vnStart, vnLineCount

ainsi, ce stupide antivirus ne trouve rien à redire...
tout de même casse pied de devoir modifier son code passer sous de tels radars....
BruNews
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
13 -
j'ai vérifié, il n'y a rien dans le fichier indiqué ni dans le reste, sinon j'aurais supprimé la source.
stephxi
Messages postés
4
Date d'inscription
lundi 12 septembre 2005
Statut
Membre
Dernière intervention
25 avril 2018
-
Peut etre stupide mais pas fou en ce qui concerne la sécurité des SI. Lorsque j'indique qu'il y a un virus, on m'enpêche de le downloader (en entreprise)

C'est pourquoi : c'est dommage qu'il y a un virus.
BruNews
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
13 -
Ce n'est pas parce qu'un anti virus stupide dit nimporte quoi qu'il faut répéter.
Suffit d'éditer avec notepad pour voir qu'il n'y a rien de bizzare dans ce fichier.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.