Incrémentation automatique de devis

Bonjour
J’ai regardé et créer le module vba comme sur la vidéo.
Je bloque pour ce qui est du numéro puisque le mien ressemble plutôt a 0000-0000-DH.
J’ai essayé en passant par Inc. mais je n’y arrive pas .
ci joint une capture d’écran.
merci pour votre aide.

Salut
En analysant ton code si ta donnée de base est sous la forme : 0000-0000-DH
Ta variable milieu est incorrect au lieu de left(right (numero, 6), 4) je pense qu’il faudrait plutôt mettre : left(right (numero, 7), 4) car il faut récupérer dans le right 0000-DH qui détient 7 caractères le left récupérant ensuite les 4 premiers soit 0000
Je n ai pas testé
À voir

Bonjour
Je viens d’essayer avec ma correction en mettant en cellule A1 la donnée de base (0000-0000-DH) j’obtiens bien l’incrémentation attendue avec la formule =inc(A1) puis inc(A2) inc(A3) en la tirant vers le bas

0000-0000-DH
0000-0001-DH
0000-0002-DH
0000-0003-DH
0000-0004-DH
0000-0005-DH
0000-0006-DH
0000-0007-DH
0000-0008-DH
0000-0009-DH
0000-0010-DH
0000-0011-DH
0000-0012-DH
0000-0013-DH
0000-0014-DH
0000-0015-DH
0000-0016-DH
0000-0017-DH
0000-0018-DH

Maintenant je te propose cette ligne de code plus simple qui produit le même effet :

inc = Split(numero, « - »)(0) & « - » & Format(Split(numero, « - »)(1) + 1, « 0000 ») & « - » & Split(numero, « - »)(2)

Elle offre l’avantage de s’affranchir du nombre de caractères entre les tirets
Seul impératif la source à incrémenter doit être située en 2° position et n’avoir que des chiffres pour que la progression puisse s’effectuer
Tu peux mettre en 1° et 3° position ce que tu veux pourvu que tu gardes les tirets entre

Mais ta solution corrigée fonctionne bien que plus rigide à toi de choisir

Attention aux guillemets dans ma proposition : " et non « comme ceci :

inc = Split(numero, « - »)(0) & « - » & Format(Split(numero, « - »)(1) + 1, « 0000 ») & « - » & Split(numero, « - »)(2)

désolé

Merci pour la réponse , mais ca ne fonctionne pas.
ci joint mon fichier parce que lorsque je veux archiver, ca bloque. Les initiales en fin de code sont récupérés dans une liste déroulante de l’auteur de la proposition.
ci joint mon fichier.TEST.xlsm (61,3 Ko)

Je n’arrive pas à comprendre où tu cherche à mettre ces numéros incrémenté et de quel manière l’incrémentation doit elle être réalisée
Par ta procédure Archiver tu vas chercher cette donnée en cellule F12 Onglet « Devis » qui elle même par le biais de ta fonction affiche une référence (2020-0001-ML) qui est bien l’incrémentation de la donnée de référence en cellule H1 de l’onglet « Feuil1 » (2020-0000-ML)
Ta fonction fonctionne parfaitement car elle fait passer la donnée référence 2020-0000-ML à 2020-0001-ML
Seulement le hic c’est pour que ta fonction évolue dans son incrémentation il faut que sa donnée de référence évolue et de 2020-0000-ML passe elle aussi à 2020-0001-ML pour que son exécution te donne l’incrémentation suivante 2020-0002-ML
Une fonction est tributaire de ses paramètres pour un résultat donné elle n’est pas dynamique

Une solution existe avec les procédures évènementielles qui à chaque nouveau Devis mettra à jour cette donnée de manière incrémenté en cellule F12 Onglet « Devis » et en cellule H1 de l’onglet « Feuil1 »
En cellule H1 de l’onglet « Feuil1 » la dernière référence utilisée
En cellule F12 Onglet « Devis » la nouvelle référence incrémenté (+1 de celle d’avant) avec réactualisation de cette dernière ensuite
Maintenant pour une bonne gestion de ces références il serait mieux d’en faire une liste dans un onglet en utilisant ta fonction (en cellule A1 la référence de base 2020-0000-ML pour les cellules suivante la fonction faisant référence à la cellule précédente) sur le lien ci-après un exemple en colonne H onglet Feuil1
Puis une Macro qui par doubleclick sur la cellule F12 Onglet « Devis » irait questionner cette colonne et de prendre la 1° référence libre en utilisant par exemple la présence d’une couleur ou non pour matérialiser la disponibilité couleur qui serait mise en place pour une référence récupérée

Suggestion à étudier

https://cjoint.com/c/JCcqBI7CvqC

Bonjour
je veux pouvoir archiver et que mon numéro de devis change automatiquement.

Ce numéro doit il changer automatiquement au moment de l archivage ?
Sinon quand doit il être mis à jour suite à quelle action ?

Oui c’est exactement ça

En pièce jointe ton fichier adapté en conséquence
A chaque utilisation de ton bouton « Archiver » le numéro du devis s’incrémente
En cellule H1 onglet Feuil1 le dernier numéro archivé
J’espère avoir répondu à ton besoin

https://cjoint.com/c/JCdogC4plXC

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.