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 :

Formulaire saisie facture


Sujet :

Macros et VBA Excel

  1. #21
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Essaie comme cela

    Cordialement;
    Fichiers attachés Fichiers attachés

  2. #22
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Merci pour tout

    j'avais oublier pour la concaténation. J'ai besoin du textbox libellé. En effet la concaténation du nom fournisseur et de la date est par défaut dans le cas ou les textbox Période Début et Période Fin ne sont pas renseignée.

    Par exemple.

    Facture MEDIREST du 31/12/2012 le libellé doit donner "MEDIREST 12/2012"

    FACTURE EDF du 01/12/2012 Periode du 01/11/2012 au 30/11/2012 Le Libellé doit donner "EDF 01/11/12-30/11/12"

    Encore une fois Merci pour tout

  3. #23
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    J'ai rajouté la partie suivante pour le libellé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            If TextBox5.Value = "" Or TextBox6.Value = "" Then
                .Cells(LigneAjout, 6).Offset(OffsetLigne, 0) = ComboBox1.Value & " " & _
                Format(TextBox1.Value, "mm/yyyy")
            Else
                .Cells(LigneAjout, 6).Offset(OffsetLigne, 0) = ComboBox1.Value & " " & _
                Format(TextBox5.Value, "dd/mm/yyyy") & " - " & Format(TextBox6.Value, "dd/mm/yyyy")
            End If
    Cordialement.
    Fichiers attachés Fichiers attachés

  4. #24
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Merci ca marche tres bien

  5. #25
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Bonjour

    Il y a eu une mise a jour du logiciel de comptabilité. J'ai du changé la présentation du formulaire. Maintenant plus rein ne marche, ca bug.
    Je ne vois pas d’où cela peut venir pourtant j'ai procéder au changement nécessaire (voir nouvelle présentation)
    Fichiers attachés Fichiers attachés

  6. #26
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    J'ai apporté les corrections et j'ai placé des commentaires qui te permettront de mieux situer les différentes fonctions du programme.

    Cordialement.
    Fichiers attachés Fichiers attachés

  7. #27
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Merci beaucoup
    Quand je saisie une facture il ya un BUG qui apparait
    Erreur D'execution 13
    Incompatibilité de type
    La ligne de code suivante est en surbrillance lorsqu'on execute le débogage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Case 17, 18 'Montant Débit, Montant Crédit
                       .Cells(DerLig, r).Offset(OffsetLigne, 0) = CCur(Ctrl)
    J'ai cru que cela venait d"une erreur au niveau du TAG mais cela n'est pas le cas

    Cordialement

  8. #28
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Fais un test avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                    Case 17, 18 'Montant Débit, Montant Crédit
                        .Cells(DerLig, r).Offset(OffsetLigne, 0) = CCur(Replace(Ctrl, ".", ","))
    pour remplacer le séparateur point par une virgule.

    Cordialement.

  9. #29
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Merci ca marche,
    Mais lorsque j'injecte le formulaire dans le logiciel. Celui ci m'indique 3 erreurs.

    -Avec la mise à jour il faut maintenant indiquer dans la colonne code charge le code 4010000 pour le fournisseur au niveau de la première ligne.
    -La colonne statut est remplie en fonction de la dernierre colonne "n° doc" si cette dernière est vide la colonne statut doit indiquer "A imputer" sinon "Ne pas imputer".
    - La colonne "Type Ligne" est renseignée en fonction de la première ligne c'est a dire lorsque sur la première ligne la colonne "code charge" contient le code 4010000 alors la colonne "Type Ligne" doit indiquée "Synthèse" sinon "Analyse" .

    Cordialement

  10. #30
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Lorsque j'injecte le formulaire dans le logiciel. Celui ci m'indique 3 erreurs.
    Je comprends bien que ton programme doit être adapté pour cause d'évolutions. Si tu comptes effectuer le suivi de ces évolutions, il serait préférable que tu essayes de trouver une solution par toi-même avant de solliciter le forum .
    Cela dit, voila une nouvelle version qui prend en compte tes remarques.

    Cordialement.
    Fichiers attachés Fichiers attachés

  11. #31
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Merci
    Je suis conscient de vous en demander beaucoup trop.

    Cordialement.

    J'ai modifier le fichier.il Marchait tres bien puis un message
    "Erreur d’exécution 9" "L'indice n'appartient pas à la sélection"

    D’où cela peut venir.
    Fichiers attachés Fichiers attachés

  12. #32
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    A l'initialisation du Userform1, il est écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private Sub UserForm_Initialize()
        With Worksheets("Sheet2")
    Mais dans ton classeur, la feuille "Sheet2" n'existe pas ("Sheet2" est le codename de la feuille "Sheet1").

    Cordialement.

  13. #33
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Lorsque j'utilise Sheet1 L'erreur continue il me met erreur 424

    Cordialement

  14. #34
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    Si tu ajoutes une ligne dans la partie d'en-tête, il faut adapter le code.
    Dans l'instruction If DerLig > 6 , le 6 correspond au n° de ligne des libellés.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub UserForm_Initialize()
        With Worksheets("Sheet1")
            'Dernière ligne renseignée de la colonne A feuille 1.
            DerLig = .Range("A" & Rows.Count).End(xlUp).Row
            'Si le numéro de la dernière ligne est supérieur à 6, c'est qu'une premiere pièce a été saisie.
            'Dans ce cas, on affecte le numéro suivant à la pièce en cours de saisie.
            If DerLig > 6 Then
    Cordialement.

  15. #35
    Membre émérite

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Points : 2 523
    Points
    2 523
    Billets dans le blog
    1
    Par défaut
    essaye peut etre d'appeler tes feuilles par leur numéro d'index
    travailleras sur la premier feuille du classeur ( quelque soit son nom)

  16. #36
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Bonjour j'ai fais des modifications sur le formulaire pour faire en sorte que dans la colonne type de ligne sur la ligne des charges apparait la Lettre A mais la cellule reste vide.

    Autres chose dans les colonnes Débit et crédit les cellules sont en monétaire alors que j'ai changé le format de ces cellules pour qu'elles soient en nombre.
    Mais lorsque je saisie une facture les colonnes Débit et crédit restent en monétaire.
    Y a-t-il un moyen pour que les colonnes Débit et redit soit en format nombre et non plus en format monétaire
    Et pourquoi sur la colonne type de ligne la mention "A" n'apparait pas alors que j'ai fait en sorte sur les lignes de charges elle apparaissent par défaut

    Cordialement

    Merci

    Est ce que mon probleme de format ne viendrait pas de cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Case 17, 18 'Montant Débit, Montant Crédit
                        .Cells(DerLig, r).Offset(OffsetLigne, 0) = CCur(Replace(Ctrl, ".", ","))
    Fichiers attachés Fichiers attachés

  17. #37
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour janakka-horus,

    Tu peux effectivement modifier cette ligne de code par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Case 17, 18 'Montant Débit, Montant Crédit
    .Cells(DerLig, r).Offset(OffsetLigne, 0) = CDbl(Replace(Ctrl, ".", ","))
    Pour le reste, je n'ai pas le temps de me replonger dans le code tout de suite mais je jetterai une paire d'yeux dès que possible.

    Cordialement.

  18. #38
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    Effectivement ca marche
    Je me doutais que cela venait de la.
    Merci beaucoup

  19. #39
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    J'ai fait des modifications sur le formulaire pour faire en sorte que dans la colonne type de ligne sur la ligne des charges apparait la lettre A mais la cellule reste vide.
    Si tu veux renseigner le type ligne des charges directement dans le formulaire, il faut que l’inscription du type ligne par défaut (type A) soit assujetti à la saisie du code charge. Si tu ne fais pas ce lien et que tu inscris le type ligne A par défaut sur les 4 lignes charges, ces 4 lignes seront reportées systématiquement dans ta feuille, même si aucune charge n’a été saisie.

    L’autre solution, c’est de copier le type A par défaut dans la feuille (pas dans le formulaire). La copie n’étant faite que si la ligne de charge est renseignée, le problème cité précédemment ne se pose plus. Et si besoin, ce type pourra être modifié dans la feuille.

    J’ai modifié le code dans ce sens. Regarde si cela te convient.

    Cordialement
    Fichiers attachés Fichiers attachés

  20. #40
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 109
    Points : 60
    Points
    60
    Par défaut
    C'est parfais c'est tout à fait ce que je voulais.

    Merci Beaucoup gFZT82.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 3 PremièrePremière 123 DernièreDernière

Discussions similaires

  1. [AC-2010] Saisie des quantités dans un formulaire de facture prérempli
    Par kcholez dans le forum Access
    Réponses: 3
    Dernier message: 08/10/2013, 12h47
  2. [Formulaire]saisie sur deux formulaires
    Par liazidf dans le forum IHM
    Réponses: 5
    Dernier message: 06/02/2007, 09h40
  3. Liste modifiable dans formulaire saisie
    Par joker vb dans le forum IHM
    Réponses: 6
    Dernier message: 31/01/2007, 02h51
  4. Réponses: 3
    Dernier message: 26/10/2006, 15h04
  5. [VBA-E] formulaire type facture,devis
    Par benco dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/03/2006, 21h53

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