conservation de la protection d'une feuille suite à macro créant une nouvelle feuille

z94

XLDnaute Nouveau
Bonjour
Je suis totalement novice en VBA, je sollicite donc votre aide.
Le problème est assez simple je pense pour les initiés.
J'ai une feuille de commande client, avec 1.000 lignes. Le client choisi parmi les articles ce qui l'intéresse, et remplis les quantités dans une colonne spécifique.
Au final, il peut commander un article, ou mille. Ce qui fait que généralement il reste beaucoup de cellules vides.
Ce que je voudrais faire, c'est une macro qui lui permettrait, une fois sa commande terminée, de créer une nouvelle feuille qui ne ressortirais que les lignes avec les articles commandés, dans un nouveaux fichier excel. Jusque là c'est bon, j'ai réussi, ce n'est pas difficile :
ActiveSheet.Range("$A$16:$I$1019").AutoFilter Field:=9, Criteria1:="<>"
Sheets("fichier client").Select
Sheets("fichier client").Copy

Maintenant j'ai trois problèmes :
1/ Je voudrais que le nouveau classeur et l'onglet de la feuille aient des noms bien particuliers : nom du classeur = "demande de proforma" ; nom de l'onglet = "demande client"

2/ Ensuite, la feuille initiale étant protégée, je souhaiterais qu'elle le demeurre une fois la macro exécutée

3/ Enfin, il faudrait que la nouvelle feuille conserve la protection de feuille initiale.

Est-ce que quelqu'un ici-bas serait en mesure de m'aider ?

Par avance merci pour votre temps

Laurent
 

CHALET53

XLDnaute Barbatruc
Re : conservation de la protection d'une feuille suite à macro créant une nouvelle fe

Bonjour,

Je ne sais pas si quelqu'un peut t'aider
Un fichier réduit de présentation (avec les données) de la feuille des 1000 lignes (10 suffiront) et de la feuille résultat attendu (avec le nom de l'onglet qui doit être calculé facilitera la résolution de ton problème

a+
 

David

XLDnaute Occasionnel
Re : conservation de la protection d'une feuille suite à macro créant une nouvelle fe

Salut
J'ai pas tout compris, un exemple avec fichiers serait pas mal ne serait ce que pour voir ou récupérer nom du classeur = "demande de proforma" ; nom de l'onglet = "demande client".
Pour la protection:
Au début de l’exécution tu mets ActiveSheet.Unprotect "tonmotdepasse" et à la fin ActiveSheet.Protect "tonmotdepasse" si c'est sur la page active. Sinon tu peux aussi mettre si ton onglet est la Feuil6: au début Feuil6.Unprotect "tonmotedepasse" et à la fin Feuil6.Protect "tonmotdepasse". S'il y a une erreur au milieu de l'execution la feuille ne sera plus protégée, tu peux faire un On Error GoTo.

@+
 
Dernière édition:

z94

XLDnaute Nouveau
Re : conservation de la protection d'une feuille suite à macro créant une nouvelle fe

CHALET53

Merci pour ton message
J'ai résolu mon problème en utilisant une macro automatisée manuellement...le protection de la feuille est assurée ainsi, car la macro ne touche pas à la protection

Merci à toi
 

Discussions similaires

Statistiques des forums

Discussions
312 527
Messages
2 089 353
Membres
104 134
dernier inscrit
marylore