IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

macro excel pour archivage facture


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2021
    Messages : 4
    Par défaut macro excel pour archivage facture
    Bonjour à tous,
    je me suis crée un fichier de facture avec une base clients.
    j'ai cree mon onglet facture et dans cette facture j'ai cree un bouton avec une macro pour sauvegarder chaque facture dans un onglet archives.
    mon souci est que au lieu d'enregistrer les infos de la facture à la premiere ligne libre (la ligne 3), il enregistre à la ligne 26 et puis les autres à la suite.
    donc les 23 premieres lignes sont vides.

    merci de votre aide.

    ci dessous mes lignes de code :

    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    'Archiver effacer et nouvelle facture
     
    ligne = Range("A3").End(xlDown).Row + 1
     
    Sheets("Archives").Range("A" & ligne).Value = Sheets("FACTURES").Range("G6").Value
    Sheets("Archives").Range("B" & ligne).Value = Sheets("FACTURES").Range("G7").Value
    Sheets("Archives").Range("C" & ligne).Value = Sheets("FACTURES").Range("F10").Value
    Sheets("Archives").Range("D" & ligne).Value = Sheets("FACTURES").Range("F12").Value
    Sheets("Archives").Range("E" & ligne).Value = Sheets("FACTURES").Range("F13").Value
    Sheets("Archives").Range("F" & ligne).Value = Sheets("FACTURES").Range("F14").Value
    Sheets("Archives").Range("G" & ligne).Value = Sheets("FACTURES").Range("G14").Value
    Sheets("Archives").Range("H" & ligne).Value = Sheets("FACTURES").Range("F15").Value
    Sheets("Archives").Range("I" & ligne).Value = Sheets("FACTURES").Range("F16").Value
    Sheets("Archives").Range("J" & ligne).Value = Sheets("FACTURES").Range("H61").Value
    Sheets("Archives").Range("K" & ligne).Value = Sheets("FACTURES").Range("d59").Value
    Sheets("Archives").Range("L" & ligne).Value = Sheets("FACTURES").Range("d60").Value
    Sheets("Archives").Range("M" & ligne).Value = Sheets("FACTURES").Range("d61").Value
     
    Sheets("FACTURES").Range("f10").ClearContents
    Sheets("FACTURES").Range("d22").ClearContents
    Sheets("FACTURES").Range("c26:g57").ClearContents
    Sheets("FACTURES").Range("d59:d61").ClearContents
    Sheets("FACTURES").Range("g6").Value = Sheets("FACTURES").Range("g6").Value + 1
     
    End Sub
    Facturier.pdf

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour Colphi,

    Bienvenue sur le Forum.

    Tout d'abord, il serait utile de baliser tout code reporté par les bornes #.
    Celui-ci n'en sera que plus lisible.

    Ecrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ligne = Range("A3").End(xlDown).Row + 1
    est imprécis, voire dangereux.
    L'objet Range n'étant pas rattaché à la feuille parent, celui-ci est considéré par VBA comme appartenant à la feuille active.
    Ce qui n'est sans doute pas le cas.

    Dans ce genre de processus, par prudence, mieux vaut se diriger du bas de la feuille vers le haut (End(xlUp))

    Lorsqu'un objet (ici Worksheets) est affecté de plusieurs méthodes ou propriétés, le bloc With permet une meilleure lisibilité du code et, partant, une gestion améliorée.

    Pour ma part, dans mes développements, ce type de report (ici facture) est en liaison avec une plage comprenant une ligne de données.
    Il est ensuite aisé de reporter cette plage dans une table de synthèse (Reporting des factures).
    Ceci selon un schéma que je trouve logique
    Formulaire (éventuel) ->ligne de données -> état facture
    Ainsi, chaque cellule de la feuille facture est formulée
    Illustration
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets("lafacture").Range("lemontant").Value = Range("T_Données[montant]").Value
    La ligne de données venant ensuite compléter une feuille de synthèse.

    Cela étant.
    ...
    Cela étant

    Si, comme je le présume , tu es débutant(e), alors je ne peux que te conseiller d'envisager la gestion de tables de données (ou tableaux structurés) pour la gestion de ces données dans une table de synthèse.
    Cette dernière comprenant un tableau structuré (voir ci-dessous) auquel une ligne sera ajoutée
    Avec un minimum d'investissement (au sens propre du terme), tu gagneras rapidement en rigueur donc en efficacité.
    Fi donc des End(xl...
    2 tutoriels pour cela
    Les tableaux structurés
    Les tableaux structurés par VBA

    En espérant t'avoir aidé.

    Bonne continuation.

    Marcel

  3. #3
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2021
    Messages : 4
    Par défaut
    merci de votre retour

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Oui, et....?

  5. #5
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2021
    Messages : 4
    Par défaut
    oui et?.......

    et bien effectivement en tant que débutant du VBA vos conseils ont été précieux.
    j'essaie de mettre en application tout ce qui a été dit et qui m'a été conseillé.

    Pour l'instant j'avance a petits pas.

  6. #6
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonsoir Colphi, Bonsoir le Forum,

    Nous sommes, pour beaucoup, passés par ce stade.

    Tu trouveras dans ce billet quelques liens documentaires qui, peut-être, te seront utiles.

    Bonne suite et à bientôt.

Discussions similaires

  1. Macro excel pour exportation données vers Access
    Par jaromyr dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 13/12/2007, 23h50
  2. macro excel pour transformer L1C1 en A1
    Par mikeOSX dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/09/2007, 09h24
  3. macro excel pour récupérer cellules
    Par touaine dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/05/2007, 21h05
  4. Macro Excel pour un import vers access
    Par Nicola dans le forum Access
    Réponses: 6
    Dernier message: 21/02/2007, 15h50
  5. Aide sur les macros Excel pour recopie auto de données
    Par nicoduhavre dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/11/2005, 08h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo