Bonjour,
Je suis nouveau sur ce forum et plutôt débutant en VBA. Avant de poster cette demande, j'ai cherché dans le forum, mais n'ai pas trouvé de réponse à ma problématique.
Dans le fichier ci-joint j'ai 4 feuilles, avec 4 macros dans la feuille 1 (que je vais nommer ci-dessous macro 1, 2 et 3) et 1 macro (que je vais nommer ci-dessous macro 4) dans chacune des autres feuilles.
Ces macros sont des modules utilisant des "contrôle de formulaire"
Dans la feuille 1 : la macro 1 sous "Case n°" me sert à sélectionner l'utilisation de la feuille 2, de la feuille 3 ou de la feuille 4
La macro 2 sous "Number of option" me sert à sélectionner le nombre d'option (de 1 à 3) et d'afficher dans les feuilles 1 et 2 ou 3 ou 4 le nombre d'options sélectionnées
La macro 3 sous "Qty per option" me sert à sélectionner le nombre de quantité à traiter de 1 à 6 et d'afficher dans dans les feuilles 1 et 2 ou 3 ou 4 les colonnes quantité 3 à 6
La macro 4 est présente à l'identique dans les 4 feuilles. Elle me permet de choisir d'afficher dans chaque feuille et/ou les options 1, 2, 3 et/ou toutes.
Il y a sûrement moyen d'améliorer le code de ces macro que j'ai faites avec mes petites connaissances en langage VBA, et avec ma logique ...
Mon premier problème est le plus important : ce fichier est un outil destiné à des utilisateurs qui doivent saisir certains champs (cellules blanches encadrées de bleu dans la feuille 1 et cellules bleues dans les autres feuilles). Les autres cellules de la feuille contiendront des informations et/ou des formules qui sont protégées par un mot de passe (le mot de passe est "test" dans le cas présent). Pour l'instant je n'arrive pas à insérer un code qui me permette de faire fonctionner ces macros lorsque la feuille est protégée. J'ai lu pas de mal de choses sur plusieurs forum, mais je ne trouve toujours pas la solution.
J'ai essayé de mettre dans le module "ThisWorkBook" le code suivant sans succès :
J'ai également essayé d'intégrer le code suivant dans les modules :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Private Sub Workbook_Open() Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Protect Password:="test", UserInterfaceOnly:=True Next ws End Sub
et j'en passe ... mais impossible d'utiliser les macros, une fois la 1ère exécutée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub Case_Option_Qty() ActiveSheet.Unprotect "test" 'mes instructions ActiveSheet.Protect "test", True, True, True End Sub
L'un d'entre vous aurait-il une idée ?
Je cherche également une amélioration à l'affichage des colonnes quantités 4, 5 et/ou 6 lorsqu'elles sont masquées par la macro. Je souhaiterais encadrer en gras noir les options, telles qu'elles sont présentées lorsque les 6 sont sélectionnées. Je pense que ce n'est pas trop compliqué, mais je ne sais comment faire et n'ai pas eu trop le temps de chercher.
Merci d'avance pour vos réponses
Partager