Incrémentation base client

Bonjour à tous.

j'ai réalisé un facturier pour ma pension que je joints au post, et je coince sur certains points et j'espère que vous pourrez m'aider.

1er problème: J'ai une base client et un formulaire pour rentrer des nouveaux clients ou visualiser les infos de clients (que j'appelle vacancier). mais actuellement, je suis obligé d'incrémenter manuellement le n°client et je voudrais que lorsque je créé un nouveau client, le N° client soit créé et incrémenté automatiquement. ( sinon je suis obligé à chaque fois de regarder dans ma liste le dernier numéro pour l'incrémenter)

2eme problème: j'ai plusieurs feuilles mais j'en ai une qui me sert à faire la saisie. Lorsque je clique sur mon bouton "facture" pour créer ma facture, j'ai plusieurs feuilles (remplies automatiquement) qui sont enregistrées. Mon soucis est que pour enregistrer au format pdf mes différentes feuilles, je les sélectionne à l'aide de sheets("feuille1").select. Seulement à cause de ceci, pendant toutes les taches que je demande, l'affichage "saute" car il passe d'une feuille à l'autre.

Ce que je voudrais faire, c'est que tout se fasse en arrière plan sans que cela "se voit".

Pourriez vous m'aider à résoudre ses deux premiers problèmes?

Je vous remercie d'avance.

Mon fichier est peut être un peu brouillon donc n'hésitez pas si vous avez des questions. je ne suis pas très doué en vba et je découvre et copie/adapte ce que je trouve par ci par là. J'espère que vous serait indulgents :p

Si je ne répond pas très vite, c'est en partie à cause du décalage: je vis en Polynésie.

23facturier.xlsm (256.45 Ko)

Bonjour

A voir

32facturier-v1.xlsm (251.79 Ko)

Bye

Bonjour

A voir

Facturier_V1.xlsm

Bye

Merci beaucoup, ça marche nickel. l'écran ne bouge plus d'une feuille à l'autre. Apparemment la commande Application.ScreenUpdating = False permet d'accélérer le traitement en arrière plan.

Par contre l'incrémentation ne fonctionne pas. Il me rajoute que des 1 sur les lignes suivantes. mais cela m'a donné des idées.

si vous avez d'autres solutions..

Finalement j'ai reussi en faisant comme ceci:

dim cc as string
'je copie dans cc les 5 derniers caractères de  la case de la dernière ligne de la colonne A
 cc = Right(Sheets("Base client").Range("A" & L - 1), 5)
'copie les 5 dernier caractères du dernier code client dans la variable "cc"
 Sheets("Base client").Range("A" & L).Value = "K" & Format(cc + 1, "00000") 

j'ai un code client de la forme K00001 donc je ne pouvez pas incrémenter (car il contient une lettre) . Du coup j'ai sorti la partie du code en numérique, je l'ai incrémenté puis j'ai concaténer "K" avec le chiffre incrémenté. Ce dernier à été mis en forme pour le garder sous la forme "00002 ".

je ne sais pas si c'est orthodoxe mais ça marche très bien.

Si j'ai d'autres questions, est-ce qu'il vaut mieux que je créer un autre post ou je peux continuer dans celui ci? (car j'ai d'autres questions

Bonjour

Je pense qu'il est préférable que tu ouvres un autre post pour 2 raisons

La 1ère, le titre sera certainement différent

La 2ème, tu remets ainsi ton post en avant.

Bye

Bonjour

Je pense qu'il est préférable que tu ouvres un autre post pour 2 raisons

La 1ère, le titre sera certainement différent

La 2ème, tu remets ainsi ton post en avant.

Bye

Ok merci

Rechercher des sujets similaires à "incrementation base client"