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.
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...
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....
C'est pourquoi : c'est dommage qu'il y a un virus.
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.