Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Archive facture

  • Initiateur de la discussion Initiateur de la discussion bingo10
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

bingo10

XLDnaute Occasionnel
bonjour,
Si on pouvait m'aider! je souhaite archiver les données dans une feuille fichier et provenant d'un modele facture dont son numero est incrementé suivant les données enregistrees en archives
des elements de ce modeles proviennent d'un feuille synthese qui elle meme est alimenté d'autres bases exclues dans cet envoi
Merci! Voici un extrait du code mais ce n'est pas bon! et je ne peux envoyer le fichier meme compressé
Sub Archives()
Dim Datefac As Date
Dim Numfac As Integer
Dim Client As Variant
Dim NumClient As Variant
Dim Designation As Variant
Dim objet As Variant
Dim Lot As Variant
Application.ScreenUpdating = False

Datefac = Sheets("Facmodele").Range("h8").Value
Client = Sheets("Facmodele").Range("c14").Value
Numfac = Sheets("Facmodele").Range("e9").Value
NumClient = Sheets("facmodele").Range("i12").Value

Sheets("facmodele").Range("a24").Select
Do While ActiveCell <> ""
Lot = ActiveCell.Value
objet = ActiveCell.Offset(0, 1).Value
Designation = ActiveCell.Offset(0, 2).Value


Sheets("Fichier").Select
Range("a8").End(xlDown).Select

Selection.EntireRow.Insert

ActiveCell = Numfac
ActiveCell.Offset(0, 1) = Datefac
ActiveCell.Offset(0, 2) = Client
ActiveCell.Offset(0, 3) = NumClient
ActiveCell.Offset(0, 4) = Lot
ActiveCell.Offset(0, 5) = objet
ActiveCell.Offset(0, 6) = Designation

Sheets("Facmodele").Select
Loop
Application.ScreenUpdating = True









End Sub
 
Re : Archive facture

Impressionnat, cela me depasse, Bravo!
Je pense que cela doit trés bien fonctionner, j'aurai été incapable seul
Je ne sais comment vous remercier ( si ce n'est vous solliciter mais je ne suis pas seul, je le comprends !, je plaisante!)
En esperant que l'on garde contact, Merci!
David
 
Re : Archive facture

re

suite à ton message perso, ci-joint la v5
Le bug sur la recherche était lié à l'absence de déclaration de la variable ref et à la fonction find qui s'arrête sur la cellule contenant la chaine recherchée et non la valeur exacte saisie dans le testbox d'où la fiche du lot 145 qui apparait si on tapes 45 dans la recherche
ai donc modifié le code qui n'utilise plus la fonction find mais compare les valeurs de chaque cellule en colonne B et la variable ref en ajoutant le cas où la valeur saisie ne se trouve pas dans la colonne B.

Ci-joint fichier modifié

a+

http://cjoint.com/?lbatkSSeWZ
 
Re : Archive facture

Bonjour LedZepfred,
c'est génial, il faut vraiment une grande maitrise, les ameliorations apportées sont pertinentes, merci vraiment! Je ne veux pas abuser de tes competences, comment puis je t'apporter quelque chose?
Une derniere chose,( je pense,)il s'agit de la numerotation automatique, si par erreur je souhaite supprimer des lignes du fichier archive ou annuler la mise en archive de telle facture, il faut que le numero corresponde, la plage Numfacture de la feuille fichier varie alors que j'ai placé les $, (je ne sais pas comment agir!) tu vois ?
Encore Merci!
 
Re : Archive facture

salut bingo,

ta plage numfacture est A$8:A$98, la macro archive insère une ligne pour y mettre les données de facmodèle, numfacture se redimensionne donc toute seule en A$8:A$99. De même la suppression d'une ligne y compris la 8 redimensionne la plage numfacture. Donc pour moi il n'y a priori pas de souci.
Maintenant si tu veux sécuriser la définition de cette plage on peut ajouter une ligne dans le code pour définir à chaque archivage de facture cette plage numfacture.

En ce qui me concerne c'est la recherche client qui me pose problème car en cas de doublons sur le nom tu risques de ne pas afficher la bonne fiche (j'y ai pensé hier après la modification de la recherche de lot). Je vais voir ce que je peux faire pour pallier à ça

a+
 
Re : Archive facture

re,

ci-joint une autre version du fichier qui améliore la recherche client,
j'ai créé un combobox qui concatène le nom et le prénom (s'appuie sur les données de C8 et D8 à la dernière ligne, il suffit desormais de cliquer sur l'ascenseur pour séléectionner un client puis cliquer sur rechercher, si tu préfères saisir le nom, les premières lettres saisies t'amène à la valeur.
Cette méthode évite l'ecueil des doublons sur le nom et tout bug.
Maintenant situ as deux acheteurs s'appellant patick dupont, soit un vrai doublon nom prénom, il faut les distinguer par un autre discriminant (un second prénom par exemple à saisir dans le champ prénom à la suite du prénom)

dis moi ce que tu en penses

http://cjoint.com/?lccMpUNRjb
 
Re : Archive facture

Bonjour Ledzpfred,
En effet tu as raison pour les noms mais on pourrait mettre le numero correspondant à la validation dans l'userform sachant qu'ils ont tous ont un numero unique ( en complement d'infos pour la recherche client ).
Comme c'est une vente aux encheres, en colonne J de la feuille article, mettre les numeros et en colonne K le nom ( ex lot 52, j'ai pu mettre que le numero )

Concernant l'incrementation des factures, si par ex je supprime toutes les lignes du Fichier Archive et tu archives la 1ere facture de la feuille facmodele, en colonne A on retrouve le numero 1 de la facture, seulement il ne s'affiche pas le numero 2 dans la facture facmodele du fait qu'en cellule A3 NB de facture emise = 0
j'Je comprend qu'il y a decalage, je souhaiterai fixer cette zone si suppression ou modif, et que Numfacture se mette à jour en quelque sorte

Qu'en pense tu,? tu as le temps! Merci!
 
Re : Archive facture

salut,

ci -joint la v7 : http://cjoint.com/?ldoAmpScH2

pour la recherche client j'ai inclus le numéro client entre parenthèse après nom prénom ainsi plus de pb de doublons.

Pour le nb de factures émises, la formule en A3 n'utilisait pas Numfacture mais la plage A10:A..., ai donc remplacé la formule (=MAX(Numfacture)), de plus la plage Numfacture est recalculée après chaque insertion de lignes dans le code vba archives. Donc plus de problème d'incrémentation de numéro de factures (sauf si on supprime la valeur max bien entendu).
Dis-moi si ça te convient.

A+
 
Re : Archive facture

re...

je ne mérite vraiment pas ce titre de professeur, j'ai commencé les macros il y a 6 mois seulement et j'ai beaucoup appris grâce à l'enregistreur de macros et la richesse de ce forum.

En ce qui concerne ton fichier, personnellement je réduirais le nombres de lignes de la matrice sousdoublontrié qui est grandement responsable de la lenteur de ton fichier, je cherche un moyen de redimensionner les plages Lot, Bobjet et Numclient pour pouvoir limiter le nombre de formules dans le feuillet Param à chaque ouverture de ton fichier (redimension impliquant les modif bien sur)

Je reviens vers toi dès que j'ai trouvé
 
Re : Archive facture

ben je te rassure moi non plus j'en verrai pas la fin...

dis-moi la plage FinFichierFacture est à réparer dans le fichier, quelle plage désigne-t-elle.

Je te promets rien pour limiter les champs de la matrice (j'ai reussi à le faire par macro mais je n'arrive pas à ajouter des lignes quand je crée un client ou un lot, c'est enervant mais je lache pas l'affaire!!!)

a+
 
Re : Archive facture

FinFichier facture est je pense le nom de la 1ere cellule vide parés l'archive de facture
je ne sais plu trop!
Tu es perfectionniste, mais ne t'inquiete pas pour cette optimisation de l'outil, c'est vraiment satisfaisant, (tu sais j'ai d'autres applications à te presenter si tu veux)
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
10
Affichages
705
Réponses
3
Affichages
861
  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
545
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…