Macro et protection feuille

Résolu
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   -  
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Problème de macro simple tri

Deux macros sont crée, une de tri et l'autre pour remise a zéro du document.
Les cellules concernées sont déverrouillées les deux fonctionnent.

Quand je protège le document => la macro tri ne fonctionne plus ?

Visual basic => « la methode sort de la classe Range à échoué »
débogage =>
Range("B10:O45").Select
Selection.Sort Key1:=Range("B10"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B10").Select
End Sub

Perso je nage...
Merci de m'éclairer.




A voir également:

19 réponses

Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
ci joint le fichier que je tente de faire https://www.cjoint.com/c/CLmo4Vookxv
0
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Bonjour Jcarl
Voilà la macro pour ôter la protection et la remettre

sub trie()

'déprotéger la feuille en début de macro, avec ces lignes de commande

Sheets("votre feuille").Select
ActiveSheet.Unprotect Password:="votre mot de passe"
Range("B10:O45").Select
Selection.Sort Key1:=Range("B10"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B10").Select
'remettre la protection à la fin de la macro
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour tous

vous avez raison Philou, toutefois:

Activesheet.Unprotect "mot de passe"

suffit, le reste se fait par défaut

Et pour rester logique, il faut rajouter le mot de passe à la fin

Activesheet.protect "mot de passe"

s"il y en a un bien sur

Petite question: chez moi la protection propose l'option autoriser le tri si on coche dans la, liste, mais cela ne fonctionne pas une fois la feuille protégée. Chez vous ça se passe comment?

crdlmnt

Errare humanum est, perseverare diabolicum
0
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Même problème quand la feuille est protégée on ne peut pas trier, alors que j'ai bien coché tri.
Ok pour la protection avec mot de passe, j'ai l'habitude de juste protéger pour éviter d'écraser les formules, et je ne mets pas de mot de passe, Vaucluse tu as entièrement raison pour remettre la protection.
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonjour le fil,

C'est joli de mettre à notre disposition un fichier mais ou est le mot de passe pour accéder à la feuille ?
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
le mot de passe est visible en en J4
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
merci beaucoup PHILOU10120 cela a parfaitement fonctionné mais je n'ai toujours pas compris...

merci
0
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Le raisonnement la macro enlève la protection puis exécute le tri et finalement remets la protection
donc on se retrouve en fin de macro comme on était ou début avec une feuille protégée et le tri fait.
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
j'entends bien c'est l'idée simple et génial que vous avez eu mais pourquoi au départ le tri ne fonctionne pas alors que l'autre macro fonctionne
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

sans toucher aux protections, coller ce code dans un module et l'activer
le tri se fera par la suite sous protection sans problème


Sub tri()
Worksheets("Feuil3").Unprotect Password:="tout"
Worksheets("Feuil3").Protect Password:="tout", UserInterfaceOnly:=True, _
AllowFiltering:=True, AllowUsingPivotTables:=True, AllowSorting:=True
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
re bonjour est-il possible dans ma feuille de calcul de faire une macro qui renverrais le fichier (rempli) a mon adresse mail
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Oui bien sur, mais quel serait le critère déclenchant, un bouton, une saisie dans une cellule ?
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

peux tu remettre ton fichier en ligne, ton lien n'est plus actif.

je te placerai la macro qui permet le tri sous protection
et l'envoi l'envoi de la feuille par mail
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
bonjour et encore plein de merci

https://www.cjoint.com/c/CLnkoj8BGOr
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
pour ce qui est du tri cela fonctionne c'est pour cette raison que dans un premier temps j'ai mis le problème résolu ... et fait un nouveau sujet mais comme personne ne répondait je me suis permit de revenir vers toi.
si tu habites du coté de Liège je t'enverrais une invitation quand les petites fond leur gymnastique .. (concours GRS)
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Merci pour l'invitation, mais Liège est un peu loin, je suis région Toulousaine.
Je te regarde le fichier et te le retourne
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

récupère ton fichier que j'ai modifié à ma manière et qui travaille sous protection avec le mot de passe "tout"
va dans le module2 et recherche en début de code ces 3 lignes que tu dois renseigner entre guillemets
la première ligne adresse destinataire
deuxième ligne éventuellement adresse expéditeur
et troisième saisir le SMTP du fournisseur d'accès

Const Dest As Variant = "jc.bortoletto@gmail.com" '- adresse mail du destinataire
Const Exped As Variant = "www.xxxxxxx@free.fr" '----- adresse mail de l'expéditeur
Const C_Ent As Variant = "SMTP.free.fr" '---------------- adresse du SMTP"

pour un envoi anonyme mettre l'adresse destinataire
Const BCC As Variant = "" '-------------------------- adresse mail destinataire pour envoi BCC ou BCI ou CCI

pour tester utilise mes trois boutons, et si tu préfère recevoir le fichier en PDF il suffit de me le dire

https://www.cjoint.com/c/CLnlzh7GjGt

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
Là, je suis bouche beee, et forcement nul en regard de ta macro.

Apparemment je n'arrive pas faire fonctionner le bouton envoi.

-Le destinataire c'est moi OK
-l'adresse de l'expéditeur pose problème, en fait j'ai cinq entraîneurs qui tardent toujours a me renvoyer les présences et donc je pensais facilité en automatisant le doc qu'ils doivent me renvoyer, mais bien sûr ils on chacun des adresses différentes.
-SMTP est en rapport avec leur adresse ?
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

à partir de leur adresse on peut automatiser le SMTP,

pour modifier le code il me faut simplement la liste des fournisseurs d'accès comme FREE, ORANGE etc

as tu correctement saisi dans les constantes entre guillemets ton adresse et toujours entre guillemet ton SMTP. Si oui il ne doit pas y avoir de problème

quel est ton fournisseur d'accès internet
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
moi c'est Gmail => spmt.gmail.com
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
apparement cela ce limiterai à
hotmail.fr
hotmail.com
hotmail.be
gmail.com
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

pour ne pas faire d'erreur, remplace le code du module 2 par celui ci, j'ai rajouté une constante pour le numéro de port qui normalement pour Gmail est le 465
renseigne dans le code la constante que j'ai mis en gras avec l'adresse du destinataire et teste


Const Dest As Variant = "wwwwwww.ww@free.fr" '- adresse mail du destinataire

https://www.cjoint.com/c/CLnwREIOIjo

pour le SMTP Hotmail il faudra contrôler, je crois qu'il n'en existe qu'un SMTP.live.com par contre il existe plusieurs port 25 ou 587 et 995 si tu peux te renseigner auprès des différents expéditeurs


A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
c'est pas possible je repart a zero

https://www.cjoint.com/c/CLnxfxx3FXx


Avec le doc tel qu'il est, cela fonctionne à moitié.
Quand je clique sur le bouton envoie, la messagerie s'ouvre et attend que je tape l'adresse alors que mon adresse devrait simplement être inscrite par défaut c'est tout.
Je ne comprends plus rien ...
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

regarde si le fichier te va

https://www.cjoint.com/c/CLoouCVgNJ5
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

Et bien voila qui marche, j'ai reçu sur une adresse de secours le fichier,

dans le module 1 mettre ton adresse mail et c'est tout bon

ActiveWorkbook.SendMail Recipients:="jc.bortoletto@gmail.com"
0
Jcarl Messages postés 129 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci beaucoup cela va j'espère incité les entraîneurs a être plus sérieux pour les présences ils « disent » que cela prend trop de temps.
J'espère qu'ils ne seront pas effrayés par le message d'avertissement pour envoi automatique, mais je suppose qu'il n'y a pas d'autre solution.
Moi j'estime que c'est déjà parfait

Merci encore
Jean-Charles

Pour le cercle gymnique : Enfants du Peuple de Saint-Nicolas (Liège, Belgique)
0