Archivage VBA dans une autre feuille Excel

Sub Archiver()

Ligne = Range("A2").End(xIDown).Row + 1

Sheets("BILAN").Range("A" & ligne).Value = Sheets("FACTURE").Range("A4").Value

Sheets("BILAN").Range("B" & ligne).Value = Sheets("FACTURE").Range("C3").Value

Sheets("BILAN").Range("C" & ligne).Value = Sheets("FACTURE").Range("D3").Value

Sheets("BILAN").Range("D" & ligne).Value = Sheets("FACTURE").Range("A7").Value

Sheets("BILAN").Range("E" & ligne).Value = Sheets("FACTURE").Range("B7").Value

Sheets("BILAN").Range("F" & ligne).Value = Sheets("FACTURE").Range("C7").Value

Sheets("BILAN").Range("G" & ligne).Value = Sheets("FACTURE").Range("D17").Value

Range("A4").ClearContents
Range("C3").Value = Sheets("FACTURE").Range("C3").Value + 1

End Sub

Bonjour chers tous,je suis nouveau sur ce forum et novice en Excel vba.

Je solicite vivement votre aide . J'ai écrit un macro pour archiver mes factures dans un fichier 'bilan' ,chose qui fonctionne mais à chaque fois le bilan est réinitialisé or je veux que tout soit enregistré pour récupérer par la suite le résultat de tous les montants de ma feuille bilan. J'ai essayé de déboguer mais jusque là je n'y arrive pas.

13blasikewa.xlsm (25.39 Ko)

Bonjour,

A tester.

Bonsoir Eric ,je tiens à te remercier ton aide m'a été très utile ,grand merci à toi.

j'ai vu que tu as déplacé le tableau dans ma feuille bilan et j'ai pas trop compris.

Aussi peut tu me dire pour mon code marchais pas pour ne plus que je refasse les mêmes erreurs la prochaine fois.merci par avance.

la il me reste maintenant à comprendre le code.

J'oubliais quand je réinitialise mon fichier de sauvegarde et que j'enregistre une nouvelle facture,elle enregistre sur la dernière ligne du fichier de sauvegarde au lieu de recommencer.comment resoudre ce problème?

C'est la valeur de la variable Ligne qui n'allait pas, vous cherchez dans l'onglet Facture et pas dans Bilan. Tester sur la colonne B car celle-ci est automatiquement remplie et pas la colonne Client en cas d'oubli, et tester en remontant et pas en descendant. Vous devriez tester la présence d'un nom de client avant de lancer l'archivage.

  With Sheets("BILAN")
       ligne = .Cells(.Rows.Count, "B").End(xlUp).Row + 1
  End With

Sinon, vos formules RECHERCHEV sont en mode relatif / tarifs, à chaque nouvel item votre formule décale d'une ligne l'aire de référence et cela ne marche plus au bout d'un certain temps.

Le mieux est de travailler avec des tableaux structurés comme dans ma version. En ce qui concerne les tableaux décalés en ligne 10, c'est une habitude de travail. Cela me permet par exemple de mettre une formule sous-total au dessus du montant ttc et bien d'autres renseignements utiles.

Encore un grand merci à vous,j'ai une dernière préoccupation ,j'ai créé un bouton d'impression qui fonctionne bien ,ce que j'aimerai savoir est si je peux utiliser une imprimante thermique POS de tickets de caisse pour imprimer les factures ou quelle est la demarche adéquate pour le faire ,car je ne veux pas les imprimer en a4.merci par avance..

Dans Démarrer/Paramètres/Périphériques/Imprimantes et Scanners, avez vous pu ajouter votre imprimante ?

Imprimante ordinaire oui ,mais pour imprimante de ticket de caisse non.

Ce que je veux savoir :est ce que je pourrai imprimer sur imprimante de ticket de caisse ma facture à cause du format de ma zone de facture.

Du genre si la facture n'est pas trop grande pour s'afficher sur le petit papier de 80mm de l'imprimante de ticket de caisse? Est ce que l'imprimante pourra comprendre ma facture pour l'imprimer au format adapté a son format papier de 80mm de largeur ?

Regardez dans Mise en page - Page - Format de papier pour voir si vous avez un format qui se rapproche du vôtre.

Ok merci bien pour ton aide.cela m'a été utile.

Rechercher des sujets similaires à "archivage vba feuille"