Compteur automatisé dans useform

moustic54

XLDnaute Occasionnel
Bonsoir

Je voudrais mettre un compteur automatique dans un useform sous la forme : 2015-XXXX
2015 étant l'année et les xxxx étant le chiffre qui s'incrément de 1 à chaque nouvel enregistrement.

Ex : 25eme enregistrement = 2015-0025
178eme enregistrement = 2015-0178

Si l'enregistrement se fait l'année suivante (soit en 2016) le compteur devra alors affiché 2016-XXXX

Quelqu'un pourrait il me dire comment faire ?
Mes connaissances en vba sont proches du degré zéro :(
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Martial

Et bien non, j'ai testé cela ne fonctionne pas :(
A l'ouverture d'un nouveau fichier sous Excel 2007, le ruban reste masqué ou plus exactement réduit.
Mais je pense ne pas être le seul à émettre ce souhait, je vais donc continuer à chercher
Merci pour le temps que tu me consacres C'est sympa de ta part Martial d'autant que je ne suis pas un surdoué en codage :eek:
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonjour Martial

Je me permets de revenir vers toi pour te demander conseil pour la modification des codes du formulaire mot de passe.
Moi qui cherche à masquer certains onglets selon les cas et qu'un simple clic de souris sur l'onglet visible suffit pour afficher le menu contextuel Afficher/masquer ..., j'ai eu bien du mal à faire apparaitre l'onglet PARAMETRES. :(
Je ne suis pas doué, c'est certain.
Dans le fichier joint, tu retrouveras ton formulaire mot de passe ainsi que de multiples boutons (commandButton, rectangle à coins arrondis, image)

Pourrais-tu, s'il te plait, m'aider à modifier le code afin de prendre en compte toutes les nouvelles éventualités ?

Merci d'avance
 

Pièces jointes

  • pass.xlsm
    63.1 KB · Affichages: 89
  • pass.xlsm
    63.1 KB · Affichages: 126

Yaloo

XLDnaute Barbatruc
Re : Compteur automatisé dans useform

Bonjour moustic54,

J'ai eu beau relire certains échanges, difficile de s'y remettre !!!!

Peux-tu m'indiquer ce que tu souhaites faire ? Me dire aussi si tous tes boutons, rectangle arrondis et image vont rester ou certains être supprimés ?
J'ai vu que tu avais changé des lignes de mon code. Alors qu'il ne fallait pas y toucher (je pense !!!) si tu souhaites vraiment cacher les onglets.
Rem Sheets("PARAMETRES").Visible = 2
Sheets("PARAMETRES").Visible = True
La ligne .....visible = 2 (correspond à xlSheetVeryHidden) cache complètement l'onglet PARAMETRES et ne peut pas être afficher par le clic droit, alors que la ligne que tu as mis, permet de modifier par le clic droit.

A te relire

Martial
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonsoir Martial

Tous les boutons, rectangles arrondis et image vont rester.

1. J'aurai voulu qu'à l'ouverture du fichier tous les boutons, rectangles .... soient inactifs et que seul l'onglet EDITO soit visible (il ne faudrait pas que quelqu'un puisse modifier quoique ce soit sans y être "invité" :eek:

2. Pour pouvoir avoir accès à ceux-ci, recours au formulaire mot de passe en cliquant sur l'image.

Prévoir plusieurs niveaux d'accès :

1er niveau : totalité des boutons actifs et affichage des onglets EDITO vu der et savoir

2eme niveau : totalité des boutons actifs et aucun onglet visible hors onglet "EDITO)

3eme niveau : seuls boutons actifs : CommandButton 2 + CommandButton21 + rectangle à coins arrondis 9 et aucun onglet visible hors onglet "EDITO)

4eme niveau : seuls boutons actifs : CommandButton 2 + rectangle à coins arrondis 9 et aucun onglet visible hors onglet "EDITO)

3. Un double clic sur l'image pourrait permettre de revenir à la situation initiale (cf. 1) sans être obligé de fermer le fichier pour à nouveau changer d'utilisateur et donc de niveau .. Si toutefois cela est réalisable :confused::confused:


Si j'ai changé ton code pour l'onglet Paramètres, c'est uniquement parce que je souhaitais pouvoir y accéder. :eek:

Est-il envisageable de donner à 2 personnes un accès niveau 3 ? Est-on obligé de passer par l'onglet "PARAMETRE" pour cela ? :confused::confused:

J'espère que mes explications ne sont pas trop absconses :eek:
 
Dernière édition:

Yaloo

XLDnaute Barbatruc
Re : Compteur automatisé dans useform

Bonjour Moustic, le forum,

Voici ton fichier, à l'ouverture de celui-ci, dans la macro Open, on cache les feuilles et tous les boutons et rectangles. Impossible de rendre non accessible les rectangles, donc on cache tout.
Dans l'UserForm MotDePasse, en fonction de l'utilisateur les feuilles peuvent être cachées ou non ainsi que les boutons et rectangles.
Ne pas toucher aux noms des boutons ou rectangles sinon plus rien ne fonctionnera.

A+

Martial
 

Pièces jointes

  • pass.xlsm
    72.3 KB · Affichages: 59
  • pass.xlsm
    72.3 KB · Affichages: 54

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonjour Martial, le forum

Merci pour le fichier malheureusement je ne peux le tester puisque dès l'ouverture j'ai un message d'erreur :confused:

Erreur d'exécution 1004 : l'élément portant ce nom est introuvable
Erreur qui renvoie à la ligne de code : Feuil1.Shapes.Range(Array("Rounded Rectangle " & Re(i))).Visible = msoFalse

Un autre message lors du clic sur l'image
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection
Erreur qui renvoie à la ligne de code : MotDePasse.Show

pourtant bien présent dans le fichier. :confused:

Pourrait-il s'agir d'un problème de version d'Excel ?

Je vais essayer de transposer le tout dans un autre fichier sous 2007 pour vérifier si ces messages sont toujours actifs :eek:
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonsoir Martial, le forum

J'ai fait de nombreux essais mais impossible de lancer l'USF mot de passe d'un clic sur l'image.
J'ai toujours le même message d'erreur. :confused: :confused:
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection

J'ai donc tenter de le lancer directement à l'ouverture du fichier en plaçant MotDePasse.Show dans Private Sub Workbook_Open()
Je me suis dit que cela pouvait être une option sympa mais sans plus de succès. :confused: :confused:

Enfin les rectangles à coins arrondis posent problème.
Erreur d'exécution 1004 : l'élément portant ce nom est introuvable
Erreur qui renvoie à la ligne de code : Feuil1.Shapes.Range(Array("Rounded Rectangle " & Re(i))).Visible = msoFalse

Je pensais mettre dans ThisWorbook
le code

Code:
   Private Sub Workbook_Open()
Sheets("EDITO").CommandButton1.Enabled = False
Sheets("EDITO").CommandButton2.Enabled = False
Sheets("EDITO").CommandButton3.Enabled = False   
Sheets("EDITO").CommandButton21.Enabled = False   
MotDePasse.Show

Mais cela ne règle pas mon problème de rectangles à coins arrondis qui restent visibles et donc
accessibles. :confused: :confused:

En revanche lorsque l'on invalide les lignes de codes sur les rectangles, les commandButtons disparaissent bien à l'ouverture du fichier.

Si tu as des pistes ou des solutions, je veux bien de ton aide.
Je n'y arrive vraiment pas. :(
même si je me fais des nœuds au cerveau.
 

Yaloo

XLDnaute Barbatruc
Re : Compteur automatisé dans useform

Bonsoir Moustic,

Fais un essai en reprenant mon fichier sans tes modifications et en remplaçant seulement Rounded Rectangle par Rectangle à coins arrondis avec un espace après arrondis.

A+

Martial
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonsoir Martial

J'ai déjà essayé de remplacer Rounded Rectangle par Rectangle à coins arrondis avec un espace après arrondis sans succès
mais je n'ai pas testé en l'écrivant Rectangleàcoinsarrondis avec un espace après :eek:

Mais dis moi, sais tu d'où vient le problème de lancement de l'USF mot de passe ?:confused:

J'ai fait de nombreux essais mais impossible de lancer l'USF mot de passe d'un clic sur l'image.
J'ai toujours le même message d'erreur.
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection

Parce que lorsque j'ai tenté en changeant le code comme ceci, dans ThisWorbook , l'USF Mot de passe apparait bien à l'ouverture du fichier
:confused: :confused:
Code:
   Private Sub Workbook_Open()
 Sheets("EDITO").CommandButton1.Enabled = False
 Sheets("EDITO").CommandButton2.Enabled = False
 Sheets("EDITO").CommandButton3.Enabled = False   
 Sheets("EDITO").CommandButton21.Enabled = False   
 MotDePasse.Show


Pas d'inquiétude, je fais tellement de tests mais je garde bien précieusement ton fichier :)
 
Dernière édition:

Yaloo

XLDnaute Barbatruc
Re : Compteur automatisé dans useform

Re,

Chez moi, mon fichier fonctionne sur tablette Asus Excel 2013 32 bits, portable Excel 2013 64 bits et fixe avec Excel 2010. Et ce n'est pas la même configuration sur chaque PC.
Tu fais bien les essais avec mon fichier du post #95 ?

Le problème de lancement de l'UserForm doit venir du même problème que tu as à l'ouverture. Dans la macro Open, toutes les feuilles sont cachées puis c'est au tour des "Boutons" et "Rectangle coins arrondis". Je pense que cela vient des noms des rectangles.

Dans un premier temps, fais un essai en mettant en commentaire les lignes
'Définition des N° des rectangles
Re = Array(9, 8, 11, 13, 14, 16)
'Puis les cache
For i = 0 To 5
Feuil1.Shapes.Range(Array("Rounded Rectangle " & Re(i))).Visible = msoFalse
Next

A+
 

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Oui Martial, c'est bien le fichier du post #95 dont il s'agit.
Et dès le post #96 , je t'indiquais
Un autre message lors du clic sur l'image
Erreur d'exécution 9 : L'indice n'appartient pas à la sélection
Erreur qui renvoie à la ligne de code : MotDePasse.Show
Voilà pourquoi j'ai fait ces essais avec Private Sub Workbook_Open()

Pour ma part, je suis sur Excel 2007. Tu crois que cela vient de là ? :confused:
 
Dernière édition:

moustic54

XLDnaute Occasionnel
Re : Compteur automatisé dans useform

Bonjour Martial

1er test : Remplacer Rounded Rectangle par Rectangle à coins arrondis avec un espace après arrondis ou
en l'écrivant Rectangleàcoinsarrondis ne solutionne pas le problème.
Message d'erreur toujours présent à l'ouverture du fichier (cf. image jointe) :confused: :confused:

2eme test : la mise en veille des lignes portant sur les rectangles supprime le message d'erreur à l'ouverture.
Mais toujours impossible d'ouvrir l'USF Mot de passe en cliquant sur l'image.
J'ai fait un essai en associant l'USF à un commandbutton mais là aussi toujours message d'erreur. :confused: :confused:

Je te joins ton fichier modifié selon tes recommandations ainsi que les 2 messages d'erreur.
C'est à n'y rien comprendre :confused::confused:
 

Pièces jointes

  • lignes en veille.PNG
    lignes en veille.PNG
    23.2 KB · Affichages: 46
  • renomme rectangles.PNG
    renomme rectangles.PNG
    7.5 KB · Affichages: 43
  • renomme les rectangles et lignes en veille.xlsm
    64.7 KB · Affichages: 35

Yaloo

XLDnaute Barbatruc
Re : Compteur automatisé dans useform

Bonjour Moustic, le forum,

Je pense qu'il y a un problème sur la sélection des "Rectangles arrondis".
On va faire un test avec l'enregistreur de macro.
Lorsque l'enregistreur de macro est lancé, tu sélectionnes un "Rectangle Arrondi" puis tu changes le nom du rectangle (tu peux mettre n'importe quoi) puis tu arrêtes l'enregistreur et tu nous mets la macro dans ton prochain post.

A te relire

Martial