Améllioration d'une macro

Bonjour Claude,

Le fichier que tu m'as joint n'est pas le bon,il s'agit de la version 7(et pourtant zipé comme 9).

Je ne peux donc pas vérifier ce que tu me proposes.

Avant d'adresser le fichier version 8 aux trésoriers "pilote, j'avais vu que les cellules de la feuille "CCP" n'étaient pas verrouillées. J'avais donc fait le nécessaire et en plus j'avais modifié le mot de passe. Donc mes testeurs ne peuvent en aucun cas modifier cette version.

Merci de m'adresser la version 9.

Amicalement

Henri

Bonjour Claude et au forum,

Cette fois-ci, je crois qu'on est au TOP.

Pour ma part, j'ai ajouté dans le code "valider"

"Call afficherTout" juste au dessus de "End Sub"

de manière à ce que l'opérateur visualise à chaque saisie la dernière opération enregistrée dès lors que le nombre d'enregistrements dépasse 12.

La méthode pour masquer la feuille "modif" me paraît appropriée. Ne peut-on pas faire la même chose pour la feuille "saisie". Mais peut-être que cette méthode empêche la protection de la feuille?

Pour ma gouverne personnelle:

Je n'arrive pas à trouver le "combo-box(Format de contrôle)" qui sert à la liste déroulante dans ma boîte à outils. Merci de me dire comment tu as fait.

J'ai essayé de reproduire l'exercice "exo9" que j'ai trouvé sur ce forum avec la solution "exo9corr", mais je n'y arrive pas.

Amicalement

Henri[/code]

Bonjour Henri et à tous,

Je n'arrive pas à trouver le "combo-box(Format de contrôle)" qui sert à la liste déroulante dans ma boîte à outils. Merci de me dire comment tu as fait.

il n'y a pas de ComboBox, la liste a été faite avec la barre "formulaire" et non "contrôle".

La méthode pour masquer la feuille "modif" me paraît appropriée. Ne peut-on pas faire la même chose pour la feuille "saisie"

Oui, je viens de faire un essai, il faut remanier les macros.

J'irais même + loin, je masquerai tout sauf CCP, qu'en pense_tu ?

édit: avec consultation possible, évidement !

on s'oriente vers une version10

Claude.

Bonsoir,

Pourquoi pas tout masquer en effet.

Toutefois, il faut avoir que les feuilles Cpt R et Bilan sont les documents présentés lors de l'AG de chaque section, donc il faut que l'utilisateur puisse les rendre visibles facilement (surement avec un bouton supplémentaire) et d'autre part que ça n'empêche pas les impressions de chaque feuille.

OK pour version 10.

Merci et à bientôt

Henri

[/quote]

Bonjour Henri et au forum,

Pas facile d'avoir le beurre et ........... !

Toutefois, avec les boutons existants dans le coin à droite, on pourra afficher la feuille

sélectionnée.

Je regarderai çà de plus près, car avec toutes les protections, c'est coton !!

Tu me dis qu'il n'y a pas urgence, je suis actuellement sur deux autres fichiers, et je te

reprends après.

As-tu tester le changement d'année, avec la modification des bons erronés ?

Claude.

édit: tu peux décocher le "résolu"

Bonjour Claude et à tous.

Les tests sont OK.

Je considère donc la version 9 comme version "pilote".

Je l'ai transmise aux sections concernées et moi-même je la reprends.

Amicalement

Henri

re,

Les tests sont OK.

Je considère donc la version 9 comme version "pilote".

Je l'ai transmise aux sections concernées et moi-même je la reprends.

Tu veux dire que feras les modifs toi-même ?

ou tu abandonne la version10 ?

dis-moi

Claude.

Bonjour Claude,

Non, je n'abandonne pas la version 10.

Les sections "pilote" que j'ai désignées testeront avec la version 9(qui, à mon avis, est déjà très adaptée).

La généralisation pour 2009 pourrait se faire avec la version 10 que tu me proposes. Donc on a le temps

Bon WE de Toussaint

Henri

Bonjour Henri et à tous,

Je reprends le projet pour la version 10

Dans cette version, toutes les feuilles sont masquées (sauf CCP)

Ce qui amène à protéger le classeur en + de la protection des feuilles

Dans les macros, il faut donc déprotéger le classeur pour afficher les feuilles (à chaque consultation).

J'ai ouvert un post, pour éviter d'avoir à déprotéger et reprotéger les feuilles à chaques macros. (voir ce lien)

https://www.excel-pratique.com/forum/viewtopic.php?t=8237

- Je teste actuellement la méthode de "galopin01", qui semble marcher.

QUESTION :

Comment procède-tu pour changer le mot de passe ?

car il y en a un peu partout dans les codes !

Amicalement

Claude.

re,

Je m'aperçois que l'on traine depuis le début, un bout de code de ta macro d'origine

qui ne va pas bien !

    Dim nom, nl As Integer, rep1, monrep
    an = Range("b3")
    nom = ActiveWorkbook.FullName
    nl = Len(ActiveWorkbook.Name)
    monrep = Mid$(nom, 1, Len(nom) - nl)
    ActiveWorkbook.SaveAs Filename:=monrep & "Trésorerie56_" & an, FileFormat:=xlNorma

c'est pour nommer le fichier au changement d'année.

1 - il faudrait mettre le N° département dans une cellule.

2 - comment tu fait pour changer le titre d'un département à l'autre ?

Que signifie dans le titre le 5142 ?

(pour le moment, il faut bidouiller dans la macro ! ! )

Ces 2 points devrait pouvoir s'améliorer. (il faut éviter d'avoir à jardiner dans les codes)

Ton avis ?

Claude.

Bonjour Claude et le forum,

Pour changer mes mots de passe ?

En fait, j'ai fait une impression de tous les codes et j'ai mis du stabilo sur tous Protect et Unprotect pour éviter d'en oublier quand j'ai changé de MDP.

Concernant ta remarque sur le N° de département?

J'ai sauvegardé un fichier vierge type intitulé "TrésorerieDD_2008". Quand j'initialise les données d'une section, je modifie l'intitulé de la section dans le feuillet "BON_CCP" , dans VBA je modfie le code "Change année" DD devient N° du département, puis je rentre dans les feuillets"Cpt R" et "Bilan" pour initialiser les valeurs de l'année écoulée.

5142 dans le titre,

tout simplement le code budgétaire du compte chèque.

Comme tu dis, je bidouille mais j'ai le temps, je suis en pré-retraite, donc 100% de loisirs.

Merci pour tout ce que fais.

Amicalement

Henri

re, Henri,

C'est un peu ce que je pensais, dangereux pour les codes !

c'est pas une question de temps,voilà pourquoi j'ai ouvert le post. (tu l'à vu ?)

Je t'expliquerais comment changer le MDP d'un seul coup.

Pour le titre, je regarde, çà ne me plait pas comme çà ! ! !

Si je comprends bien, c'est toi qui prépare les fichiers de tous les départements ?

c'est vrai qu'une fois figée, il n'y aura plus cette manip à faire.

Tu me fais confiance !

Je continue à tester la V10

Claude.

Re,

J'ai testé la manière suivante pour le N° de département, tu me dis ce qu'en penses.

Dans le feuillet "Bon_CCP" j'ai modifié la ligne 2 à savoir:

B2:G2= SECTION AFEH XXXXXXXX

H2=DD (DD étant le N° du Dép)

Dans la feuillet "CCP" j'ai mis la cellule A3=Bon_CCP!H2

J'ai modifié le code "Change_année" comme suit

'MESSAGE D'AVERTISSEMENT

Range("A1").Select

an = Range("b3")

DD = Range("a3")

nom = ActiveWorkbook.FullName

nl = Len(ActiveWorkbook.Name)

monrep = Mid$(nom, 1, Len(nom) - nl)

ActiveWorkbook.SaveAs Filename:=monrep & "Trésorerie" & DD & "_" & an, FileFormat:=xlNormal

'*****************************

MsgBox ("Vous venez de créer votre fichier Trésorerie" & DD & "_" & an _

& " Vous pouvez maintenant saisir vos opérations dans la nouvelle année.")

Ca marche

Bonsoir

Henri

Bonjour Henri et à tous,

Version10 :

https://www.excel-pratique.com/~bigfiles/doc/Version10.zip

  • Suppression du bouton "Boutons" (incorporé dans "Aide")
  • Ajout N° département en CCP.A3
  • modif code enregistrement
    Dim Chemin As String
    Dim NomFichier As String
    Chemin = ActiveWorkbook.Path
    NomFichier = "Trésorerie (" & [CCP!a3] & ")" & [CCP!b3]
    ActiveWorkbook.SaveAs Filename:=Chemin & "\" & NomFichier

Le code ci-dessous protège toute les feuilles et permet le fonctionnement des macros sans déprotéger les feuilles. (merci galopin01)

Private Sub Workbook_Open()
For i = 1 To Worksheets.Count
Worksheets(i).Protect Password:="afeh", UserInterfaceOnly:=True
Next

Seuls subsistent les : ActiveWorkbook.Unprotect Password:="afeh" (obligatoires)

pour la protection du classeur.

J'ai mis une apostrophe devant les : 'ActiveSheet.Unprotect Password:="afeh"

devenus inutiles (je les laisse pour le moment au cas ou.. )

Fichier qui explique comment changer le mot de passe rapidement.

https://www.excel-pratique.com/~bigfiles/doc/MDP.zip

PS: si tu fais un Ctrl+b . pour déprotéger, tu dois faire un Ctrl+n . après modif

à re-tester complètement

Amicalement

Claude.

édit: pour ceux qui voudraient voir les codes, le MdP est "afeh"

Bonsoir Claude et le forum,

Pas de bonnes nouvelles!

je n'arrive plus à rien faire.

Dès l'ouverture du fichier j'ai un 1er message d'erreur d'execution "1004" (MDP non valise). En cliquant sur Ok j'accède au feuillet CCP.

Je poursuis les tests avec "annuler un bon" -> le bon n'est pas annulé

"Nouvelle saisie" idem

"modifier un bon" idem

"changer année" idem (du coup, je n'ai pas pu vérifier la finalité du chgt d'année)

J'ai l'impression que la "MACHINE" ne veut plus travailler.

J'ai testé le changement de MDP sur une autre version (la 3)->OK

Si je le fais sur la V10, faut-il avant ou après changer le MDP dans "ThisWorbook"?

Désolé de te solliciter à nouveau.

Amicalement

Henri

Bonsoir Henri,

J'ai fait tellement de tests, que je ne suis plus vraiment sûr du dernier MDP !

Tu dis que dès l'ouverture (sans rien toucher) tu as ce message ?

Essaye de faire un Ctrl+n

puis "Saisie", puis retour CCP

pour voir

Je reste en ligne

Claude.

édit: retire la protection du classeur, MDP "afeh" ou "dudu" ou "bibi"

Bonjour à tous,

Henri,

Protection feuilles + protection Classeur + feuilles masquées, çà devient de l'yper-protection ! !

(on arrive à se mélanger les crayons ! et la machine aussi)

J'ai donc pris la décision de :

  • Supprimer la protection du classeur (inutile, puisque feuilles protégées)
  • Supprimer toutes les lignes de code avec les ActiveSheet.Unprotect Password:="afeh"

Seules les 2 macros : Sub Lib (Ctrl+b) et Sub Prot (Ctrl+n). Conservent le Password:="afeh"

je rappelle que ces 2 macros ne doivent être utilisées qu'à titre exceptionnel.(pour le programmeur)

Le ThisWorkbook Open, contient aussi le mot de passe (pour toutes les feuilles)

Résultat : il ne reste plus que 3 lignes de code avec mot de passe, sur tout le fichier.

Version 11

https://www.excel-pratique.com/~bigfiles/doc/Version11.zip

PS: si tu fais un Ctrl+b . pour déprotéger, tu dois faire un Ctrl+n . après modif

à re-tester complètement avant de modifier le mot de passe (afeh)

Amicalement

Claude.

re,

en dernière minute, je découvre un bug !

encore une vielle protection qui trainait.

ATTENTION :

à l'ouverture de la Version 11

1 - tu ôte la protection de la feuille CCP (MDP = "dudu")

2 - tu enregistre

3 - tu ferme le fichier et tu le ré-ouvre.

à la ré-ouverture le mot de passe devrait être réinitialisé.

je comprends pas et croyais avoir fait le tour !

on va y arriver.

Claude.

Désolé Claude pour ce retard mais j'étais absent ce W.E.

J'ai fait ce que tu m'as dit.

Toujours les problèmes suivants:

1 modifier un bon impossible car feuiile "mofif" protègée

2 changer année, l'état de rapprochement n'est pas alimenté.

La saisie se passe correctement.

Ton code "felix" sert à quoi?

Merci pour tout ce que tufais

Amicalement

Henri

Rechercher des sujets similaires à "amellioration macro"