J’ai un programme contenant plusieurs macros.
Sur la feuille 1, j’ai un bouton et sa macro associée permettant de mettre en forme les feuilles 3 et 4 selon 2 variables (entrées par l’utilisateur sur la feuille 1), création de tableaux de dimensions fonctions des 2 variables.
Sur la feuille 2, je copie les 2 variables de la feuille 1 et l’utilisateur peut entrer des données pour info.
Ensuite, sur les feuilles 3 et 4, j’ai des macros du style :
Je veux que lorsque le programme a fini de mettre en forme les feuilles 3 et 4, l’utilisateur n’a plus la possibilité d’appuyer sur le bouton de la feuille 1 (afin de ne pas modifier les feuilles 3 et 4).
J’ai pensé à changer une variable dès que le bouton est appuyé, comme cela à chaque appui sur le bouton, je test la variable et je fais ou non la mise en forme. Le problème est que je perds la valeur de la variable si je sauvegarde et ferme le fichier.
J’ai essayé de supprimer la feuille 1 à la fin de la mise en forme (je sauvegarde par vba), pas de problème dans le déroulement du prg, mais j’ai un problème lors de l’ouverture du fichier sauvegardé (le fichier ne s’ouvre pas, erreur de Windows, le lien n’est pas trouvé par Windows), pourtant le fichier a bien été sauvegardé (grâce à une fenêtre « enregistrer sous ») et la macro supprimée ne sert plus pour la suite du prg.
Avez-vous une idée (avec les lignes de code) comme par exemple désactiver une macro (macro activée sur l'appui d'un bouton) en pensant qu’il faut que la désactivation soit gardée en mémoire après la fermeture du fichier Excel 2000.
Je ne mets pas en pièce jointe mon prg car même zippé il dépasse la limite, et surtout je crois que je n’ai pas trop le droit (confidentialité même si ce n’est pas secret défense).
Merci par avance, j'espère avoir été clair.
Sur la feuille 1, j’ai un bouton et sa macro associée permettant de mettre en forme les feuilles 3 et 4 selon 2 variables (entrées par l’utilisateur sur la feuille 1), création de tableaux de dimensions fonctions des 2 variables.
Sur la feuille 2, je copie les 2 variables de la feuille 1 et l’utilisateur peut entrer des données pour info.
Ensuite, sur les feuilles 3 et 4, j’ai des macros du style :
Code:
Private Sub Worksheet_Change(ByVal target As Range)
Dim Plage As Range
…
Set Plage = Range( … )
If Application.Intersect(target, Plage) Is Nothing Then
Else
indicepage = 1
Call modif
End If
End Sub
Je veux que lorsque le programme a fini de mettre en forme les feuilles 3 et 4, l’utilisateur n’a plus la possibilité d’appuyer sur le bouton de la feuille 1 (afin de ne pas modifier les feuilles 3 et 4).
J’ai pensé à changer une variable dès que le bouton est appuyé, comme cela à chaque appui sur le bouton, je test la variable et je fais ou non la mise en forme. Le problème est que je perds la valeur de la variable si je sauvegarde et ferme le fichier.
J’ai essayé de supprimer la feuille 1 à la fin de la mise en forme (je sauvegarde par vba), pas de problème dans le déroulement du prg, mais j’ai un problème lors de l’ouverture du fichier sauvegardé (le fichier ne s’ouvre pas, erreur de Windows, le lien n’est pas trouvé par Windows), pourtant le fichier a bien été sauvegardé (grâce à une fenêtre « enregistrer sous ») et la macro supprimée ne sert plus pour la suite du prg.
Avez-vous une idée (avec les lignes de code) comme par exemple désactiver une macro (macro activée sur l'appui d'un bouton) en pensant qu’il faut que la désactivation soit gardée en mémoire après la fermeture du fichier Excel 2000.
Je ne mets pas en pièce jointe mon prg car même zippé il dépasse la limite, et surtout je crois que je n’ai pas trop le droit (confidentialité même si ce n’est pas secret défense).
Merci par avance, j'espère avoir été clair.