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 :

Où ajouter des lignes dans ce codes [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut Où ajouter des lignes dans ce codes
    bonjour a vous tous
    dans ce code trouvé sur le net et modifié pour mes besoins
    Code : 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
    Sub Créer_La_Facture()
    Dim Sh As Worksheet, Trouve As Range
    Feuil9.Copy
    Set Sh = ActiveSheet
    Sh.Name = "Facture " & Sh.Range("D1").Value
    Sh.Range("D1") = "FACTURE"
    With Sh
            With .Range("C:C")
                'Cette méthode recherche des informations spécifiques dans une plage.
               Set Trouve = .Find(What:="Arrêtée Somme", LookIn:=xlValues, _
                    LookAt:=xlPart, MatchCase:=False, SearchDirection:=xlNext)
                'Cette méthode renvoie Nothing si aucune correspondance n'est trouvée
               If Not Trouve Is Nothing Then
                    'Si on a un résultat, on définit la plage à effacer
                   'Dans ce cas, on décale d'une ligne et on redimensionne
                   'la plage de 20 lignes et 2 colonnes
                   Trouve.Offset(1).Resize(20, 2).Delete (xlUp)
                End If
            End With
        End With
    End Sub
    a quel endroit peut-on ajouter des lignes afin de copier sur la feuille devis d'autres informations
    et aussi comment quand le code est appelé créer un bouton automatiquement et inclure un code a ce bouton, ou faire appel a un code dans le classeur qui a fait appel a cette macro

    Pascal

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    Le but du code d'origine est de transformer la feuille Devis en une feuille Facture.
    La feuille Devis doit correspondre à Feuil9 qui est copié pour créer la feuille Facture via Feuil9.Copy.

    Donc :
    -si tu veux modifier le devis, agit sur Feuil9, avant de faire la copie.
    - si tu veux modifier sur le devis copié, agit sur Sh.

    quand le code est appelé créer un bouton automatiquement et inclure un code a ce bouton, ou faire appel a un code dans le classeur qui a fait appel a cette macro
    Le plus simple serait d'ajouter directement le bouton dans la feuille Devis d'origine afin qu'il soit copié.
    De cette manière le code et le bouton serait copié en même temps.

    Mais tout dépend de ce que tu veux faire. En expliquant le but du bouton et du code associé, on pourra peut être te conseiller une solution adaptée.

    Pour ce qui est de la méthode utilisée pour repérer la zone Range("C:C").Find(What:="Arrêtée Somme") ne me paraît pas la plus adaptée.
    Je regarderais plus du côté des cellules/plages nommées.

  3. #3
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey
    merci de ta réponse, en effet ce code est pour créer une facture sur devis, le problème est que je n'utilise qu'une feuille pour mes devis et factures, il y a le nom de la feuille et le bas de page qui changent en fonction du choix sur un bouton

    Je regarderais plus du côté des cellules/plages nommées.
    justement pour le changement de nom feuille il y a des cellules nommées qui agissent en fonction du nom de feuille demandé
    dont voici le code pour un devis
    Code : 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
    26
    27
    28
    29
    30
    31
    32
    With Sheets("facture")
     
        .Range("E13:E15").Value = ""
        .Range("reste").Value = ""
        .Range("MTTC2").Value = ""
        .Range("valtva2").Value = ""
        .Range("dont").Value = ""
        .Range("tva").Value = ""
        '.Range("acsdev").Value = ""
        .Range("paie").Value = "par chèque "
        .Range("modpaie").Value = "mode de paiement "
        .Range("acom").Value = ""
        .Range("acompte").Value = ""
        .Range("surdev").Value = ""
        .Range("arret").Font.Underline = xlUnderlineStyleSingle
        .Range("arret").Value = "Arrêté le présent devis à la somme de : "
        .Range("cli").Value = "Le Client "
        .Range("moi").Value = "artisan... "
        .Range("recep").Value = "à réception du devis"
        .Range("datfac").Value = "date de paiement "
        .Range("reste:MTTC2").Borders(xlEdgeTop).LineStyle = xlNone
        .Range("D1").Value = "DEVIS"
        .Range("chiflet").Font.ColorIndex = xlAutomatic
      End With
     
      Call versacompte
      Call Signé
      Call Bon
      Call Acceptation
      Call Validité
      Call Comme
      Call suivant
    Pascal

  4. #4
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonjour,

    le problème est que je n'utilise qu'une feuille pour mes devis et factures, il y a le nom de la feuille et le bas de page qui changent en fonction du choix sur un bouton
    Pour modifier le nom et le bas de page d'une feuille copiée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        ActiveSheet.Copy  'copie la feuille courante dans un nouveau classeur
        ActiveWorkbook.ActiveSheet.Name = "facture xx"
        With ActiveSheet.PageSetup
            .LeftFooter = "Ma partie gauche"
            .CenterFooter = "Mon centre"
            .RightFooter = "Ma partie droite"
        End With
    justement pour le changement de nom feuille il y a des cellules nommées qui agissent en fonction du nom de feuille
    Et quel est le problème ?

  5. #5
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey

    merci pour ta réponse, je cherche une solution pour créer une facture sur devis et fouille le net pour cela, mais je ne trouve pas la correspondance ce code est le mieux que j'ai trouvé car il me créer la facture, mais pas plus hors il faudrait qu'il puisse prendre l'incrémentation des factures en même temps que le changement de nom
    et quel est le problème
    tu m'a mis un lien qui m'avais déjà aidé pour nommer les cellules

    Pascal

  6. #6
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Ok donc pour les cellules nommées, c'est déjà appliqué, et il n'y a pas de problème.

    Pour l'opération que tu souhaites faire, le résultat est généralement nettement meilleur si on définit précisément ce que l'on souhaite,
    puis qu'on cherche à le code, plutôt que d'essayé d'adapter du code pas toujours adapté à notre situation,
    et ne prend pas en compte tous les besoins (du coup le code n'est pas toujours adapté à la demande).

    Donc le mieux est d'essayer de résumer ce que tu as besoin.
    Puis de voir commet l'implémenter.

    Si je résume ton besoin :
    1. tu souhaite pour créer un devis : pour ça tu as une feuille modèle que tu complète manuellement.
    Tu as besoin d'incrémenter le numéro de devis automatiquement ?
    Est-ce qu'il faut gérer un numéro de révision lorsque tu refais un autre devis pour une même commande ? (O/N)
    Est-ce qu'il stocker les révisions d'un même devis dans le même classeur, autre classeur ?
    Comment sont incrémentés les numéros de devis ? Par rapport aux derniers devis établis ou bien autre méthode ?
    Ou est qu'on peut stocker le numéros de devis (un fichier annexe regroupant une liste des devis établis ?)

    2. A partir du devis tu souhaites "convertir" le devis en facture.
    -Commet sont incrémentés les numéros de factures ?
    - Par rapport au numéros de devis ? ou bien par rapport au dernier numéro de facture établi ?
    -Comment sont formés les numéros de facture ? (ex :YY - 2 digits pour l'annnée "-" un numéro unique qui est incrémenté).
    -Ou est qu'on peut stocker le numéros de facture (un fichier annexe regroupant une liste des factures établies ?)

    3. Enregistrer les devis et factures.
    Comment sont nommées les fichiers devis et factures ?
    Comment sont-ils rangés sur le disque dur (un dossier par commande (avec un sous-dossier devis + un sous-dossier factures),
    ou bien un dossier devis avec tous les devis, et un dossier factures avec toutes les factures ?

  7. #7
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey
    merci de ta réponse a laquelle je vais essayer de répondre au plus juste
    1. tu souhaite pour créer un devis : pour ça tu as une feuille modèle que tu complète manuellement.
    A l’aide de l’usf et d’une listview

    Tu as besoin d'incrémenter le numéro de devis automatiquement ?
    oui mais fait a chaque nouvelle feuille par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select Case UCase(Range("D1"))
      Case Is = "DEVIS"
    Range("B9") = Range("B9") + 1
    Est-ce qu'il faut gérer un numéro de révision lorsque tu refais un autre devis pour une même commande ? (O/N)
    oui car lors d’une modification d’un devis je suis actuellement obliger de la refaire, tout comme la facture

    Est-ce qu'il stocker les révisions d'un même devis dans le même classeur, autre classeur ?
    je ne sais pas
    Comment sont incrémentés les numéros de devis ? Par rapport aux derniers devis établis ou bien autre méthode ?
    cela se fait à chaque nouvelle feuille par cette partie de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select Case UCase(Range("D1"))
      Case Is = "DEVIS"
        Range("B9") = Range("B9") + 1
    Ou est qu'on peut stocker le numéros de devis (un fichier annexe regroupant une liste des devis établis ?)
    en marge sur la feuille

    2. A partir du devis tu souhaites "convertir" le devis en facture.
    oui
    -Commet sont incrémentés les numéros de factures ?
    pareil que pour le devis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Case Is = "FACTURE"
        Range("B10") = Range("B10") + 1
    - Par rapport au numéros de devis ? ou bien par rapport au dernier numéro de facture établi ?
    séparément
    -Comment sont formés les numéros de facture ? (ex :YY - 2 digits pour l'annnée "-" un numéro unique qui est incrémenté).
    année + mois+n° soit 2013 – 06 – 125 pareil pour devis
    -Ou est qu'on peut stocker le numéros de facture (un fichier annexe regroupant une liste des factures établies ?)
    pourquoi pas il n’y a rien de prévu pour encore

    3. Enregistrer les devis et factures.
    Comment sont nommées les fichiers devis et factures ?
    DEVIS N° 2013 – 06 - 125 – Nom client

    Comment sont-ils rangés sur le disque dur (un dossier par commande (avec un sous-dossier devis + un sous-dossier factures),
    oui un dossier facture(avec un sous-dossier devis + un sous-dossier facture)
    + sous dossiers pour facture d’acompte et sav

    ou bien un dossier devis avec tous les devis, et un dossier factures avec toutes les factures ?
    si tu veux un fichier pas de souci

    Pascal

  8. #8
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Re.

    Le résultat attendu, et la méthode utilisée me paraît déjà plus clair.
    Par contre si j'ai bien compris, le numéro de devis et de facture est basé sur une incrémentation de la même feuille. (qui fait office de Devis et de Facture).

    Cette incrémentation se fait à partir du code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Select Case UCase(Range("D1"))
      Case Is = "DEVIS"
        Range("B9") = Range("B9") + 1
    Case Is = "FACTURE"
        Range("B10") = Range("B10") + 1
    Je passe peut être à côté de quelque chose, mais je crains que cette méthode d'incrémentation,
    risque par aboutir à l'utilisation de 2 devis ou factures avec le même numéro.
    En effet pour que le numéro de facture se propage entre fichier, tu dois toujours partir du dernier fichier devis/facture.
    Et si le devis <D-1> n'est pas encore facturé, le compteur de facture <F-1> ne sera pas encore incrémenté sur la feuille copiée pour créer l'autre commande.
    Du coup 2 devis peuvent donner un même numéros de facture.

    D'où l'idée d'avoir un fichier de résumé, où se trouverai :
    - dans un onglet la liste des devis établis et le compteur de devis.
    - dans un autre onglet la liste des factures établies et le compteur de facture.

    A chaque création de devis / facture (clic sur un bouton), la macro irait incrémenter le compteur de devis / facture dans le fichier "résumé".
    De cette manière, pas de risque d'avoir 2 fois le même numéro de facture.

    Si tu peux poster le fichier modèle, je pourrais te montrer comment gérer ça.

  9. #9
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour Blue Monkey
    merci pour ta réponse car ce que tu dit concernant les incrémentations, je ne le voyais pas comme ca, mais beaucoup plus simplement, merci je te joint mon fichier non fini
    http://cjoint.com/?CFDs2UyNW4A

    Pascal

  10. #10
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Le fichier comporte 3 onglets.
    - L'onglet facture (qui peut être le devis également)
    - un onglet base
    - un onglet client.

    - L'onglet facture, je pense avoir compris qu'a la base c'est un devis, qui est transformé en une facture au moment de la facturation.
    - Les onglets bases et clients doivent aussi être présent dans le classeur qui sert à établir les devis / factures ?
    Il y aura des liens dans des formules entre les feuilles bases / client et les devis / facture ?
    - Un classeur Devis = 1 une feuille Devis + 1 feuille Base + 1 feuille Client ? ou bien juste 1 feuille Devis ?-
    Un classeur Facture = 1 une feuille Facture + 1 feuille Base + 1 feuille Client ? ou bien juste 1 feuille Facture ?


    [Edit] Les méthodes les plus simples sont souvent les meilleurs, il faut juste qu'elle fonctionne dans tous les cas.
    Si tu m'explique comment le compteur de facture / devis fonctionne pour éviter les doublons, il n'y a pas de problème on peut rester sur le même méthode.
    Mais s'il y a un risque de doublons ...

  11. #11
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    re
    l'onglet facture n'est pas forcément pour faire un devis mais aussi facture, facture d'acompte et facture sav
    j'ai réduit a 23 lignes l'onglet base pour alléger le fichier mais était trop encore trop lourd
    l'onglet clients doit contenir a ce jour 128 clients
    Il y aura des liens dans des formules entre les feuilles bases / client et les devis / facture ?
    - Un classeur Devis = 1 une feuille Devis + 1 feuille Base + 1 feuille Client ? ou bien juste 1 feuille Devis ?-
    Un classeur Facture = 1 une feuille Facture + 1 feuille Base + 1 feuille Client ? ou bien juste 1 feuille Facture ?
    tu juges le mieux pour ne pas avoir de doublons entre classeur devis et classeur factures, jusque présent une feuille me suffisait mais comme je le fais évoluer il y surement des changements a effectuer
    par ailleurs comme tu a le fichier comment puis je faire une sauvegarde au format .xlsm car après quand je rouvre le fichier il y a un message qui dit qu'il y a incompatibilité de format pour cause surement de windows8 64bits et office 2010 32 bits
    j'aurai a rajouter une feuille archive pour les devis et facture
    l'incrementation se fait sur la feuille "facture" en B9:B12 pour les 4 types de feuille
    Pascal
    je te joint 2 document du lieu de sauvegarde

    re
    je rajouterai également une feuille de d'attestation de tva à 7% qui sera remplie avec le nom du client du nouveau devis ou d'une facture faite sans devis, cette feuille sera imprimée en 2 exemplaire comme le devis

    Je serai absent de dimanche midi a vendredi 5 au soir(travail) et ce le mois de Juillet

    Pascal

  12. #12
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Re.

    La feuille comporte déjà pas mal de chose.
    Et fait appel à des librairies que je n'ai pas sur mon PC.
    Donc je ne pourrais pas modifier le fichier sans risquer de casser des choses.

    Pour les avertissements au passage xls vers xlsm je les ai aussi.
    A priori ça vient du nommage de cellule / plage.
    Mais à la ré-ouverture du fichier xlsm, je n'ai pas de message d'erreur.
    (encore une fois, comme je n'ai pas toutes les librairies dont ce sert ce fichier sur mon PC, c'est possible que je ne me retrouve pas dans la même situation que toi.

    Merci de m'avoir averti de ton absence. Je vais voir ce qu'il est possible de faire.

    A+

  13. #13
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey

    voici ce a quoi j'ai essayer cette semaine sur mon portable, afin de pouvoir faire une saisie d'acompte dans la feuille facture
    je serai encore absent la semaine prochaine a moins de contre ordre

    Pascal

  14. #14
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    De mon côté j'ai regardé comment permettre le changement qui aura le plus d'impact sur le formulaire actuel :
    le fait de pouvoir passer d'un devis à une facture sans avoir à tout re-saissir dans un document facture,
    tout en gardant une cohérence dans les numérotations devis et factures.


    Je suis arrivé à la conclusion que chaque devis généré doit continuer à pouvoir accéder à la base des articles et des clients.
    Simplement pour ne pas avoir des fichiers devis / facture énorme, et difficile à mettre à jour
    (s'il autant que base article / client que de devis, c'est long à mettre à jour lorsqu'il faut changer un prix ou une référence )
    ça revient à dire qu'au niveau fichier et dossier dans le dossier de travail il faut séparer dans un fichier indépendant :
    - la base article
    - la base contenant la liste des clients et leurs informations
    - un fichier de synthèse avec la liste des factures, devis généré (pour les compteur de facture).

    En gros le dossier de travail serait organiser :
    /base
    /base/clients.xlsm  ' liste des clients et macro pour ajouter / supprimer un client
    /base/articles.xlsm 'liste des articles et macro pour la mise à jour des articles
    /devis
    /devis sav
    /factures
    /factures sav
    /factures acompte
    <modèle de facture&devis.xlsm> ' le fichier de base pour la création d'un nouveau devis / facture
    <liste devis et facture> 'le fichier contenant la liste des factures et devis généré, et les compteurs de factures, devis
    
    Cette architecture me paraît la plus saine pour gérer les mises à jour dans la durée.
    Encore que un sous dossier par année permettrait de garder l'architecture et l'archivage plus facilement.
    (dans l'idéal, le fichier résumé pourrait contenir un lien hypertexte vers les devis et factures générés. Mais ce lien n'a de sens que si les dossiers ne change pas de nom)

    Et donc pour le moment, je suis entrain de séparer le traitement du fichier que tu as envoyé pour répartir un peut tout ça.

  15. #15
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey
    Merci,
    (dans l'idéal, le fichier résumé pourrait contenir un lien hypertexte vers les devis et factures générés. Mais ce lien n'a de sens que si les dossiers ne change pas de nom)
    en principe les dossiers ne changeront pas de noms
    Encore que un sous dossier par année permettrait de garder l'architecture et l'archivage plus facilement.
    c'est ce que je fait actuellement mais manuellement, je change d'exercice au 1 aout de chaque année.
    dans le fichier que tu a reçu il y a un usf3 que j'avais pour la recherche de devis et qui fonctionne bien car il ouvre le devis mais c'est tout (donc poubelle)
    ton organisation me plait, mais a tu vu que l'inscription des lignes se fait une par une et ce jusque fin d'inscription, c'est l'aperçu qui (en gros) fait le boulot de mise en page détermine le nb de page etc...
    mes références siret et assurances se mettent en fin de feuille car ils sont inscrit dans la partie centrale basse de la mise en page.

    au niveau des prix d'articles, il n'y a que l'électricité qui varie tout les 3 mois(cuivre), la plomberie 6 mois le reste a l'année ou a chaque devis ou il faut inscrire des nouvelles références en fonction du choix et de la demande client
    c'est surtout dans les familles autre qu'électricité et plomberie que la base articles bougera le plus souvent

    la feuille jointe a un code vba qui fonctionne sur mon fichier, ce code sauvegarde en fonction du n°de semaine et du choix du nom de la feuille,etc
    cette feuille n'est pas de mon cru

    bref je te joints tout ce dont j'ai fait des essais pour que tu vois tout
    Pascal

  16. #16
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    Ci-joint une version Betâ ( je n'ai pas tout testé ) de ce qui était prévu plus haut.
    Mais globalement c'est fonctionnel.
    Le zip contient une arborescence complète de dossier (devis, facture, base ...)
    Par défaut le répertoire dans lequel doit ce trouver cette arborescence est :
    C:\Facturation-Test

    Mais ce dossier peut être changé depuis le module M_Constantes du fichier modèle pour les devis et factures : devis_facture modele 1.01.xlsm

    A noter que :
    - tous les fichiers sont au format XLS2010 (xlsm ou xlsx)
    - il y a des références sur des cellules dont les noms n'existait pas (je les ai mis en commentaire précédé de TODO
    (donc pour les retrouver il faut faire une recherche sur cette chaîne)
    - la listView de l'USF bibliothèque devait être issue d'une librairie spéciale, parce que chez moi, elle a disparu à l'ouverture.
    Par restaurer l'ancienne, je suppose qu'il suffit de faire un copier / coller de la listView d'un ancien fichier vers le nouveau fichier.

    - Un <bouton Enregistre dans la Base> a été ajouté.
    Il insère tout document (le devis modèle, comme tout document dont il en serait issue) dans les dossier de sauvegarde,
    et se réserve un numéro unique dans le fichier listant les devis).
    Fichiers attachés Fichiers attachés

  17. #17
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour BlueMonkey

    pour une version beta, c'est époustouflant de qualité, jamais je n'aurais penser le faire comme ça
    bon dans quelques heures le jour va se lever et j'y verrai plus clair

    Pascal

    re bonjour BlueMonkey

    un grand merci, donc je te joint la feuille d'attestation de tva 7 qui doit etre remplie lorsque dans la facture où le devis il y a 1 ligne où plus qui a le code de tva 7 et aussi si l'adresse du chantier est différente.

    ainsi justement l'usf qui me sert a écrire l'adresse du chantier sur la feuille, la feuille source contient les cp et ville qui sont dans la feuille client du fichier

    Pascal

  18. #18
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonsoir,

    Content que ça te convienne.
    ll y aura certainement des choses à revoir, mais dans l'ensemble les éléments sont en place.

    Dans les choses a regarder, :
    - au niveau de l'adresse client, le prénom et nom finissent dans la même cellule.
    Du coup il devient très difficile des les récupérer pour compléter l'attestation nom/prénom séparément.
    - idem pour l'adresse, j'ai l'impression que rien ne permet de savoir à coup sur dans cellule va se trouver la ville, le code postal ...
    - pour le stockage des pdf, il faudra probablement renommer les dossiers pour mieux faire apparaître le lien entre fichier xls et pdf.
    - je ne sais pas si c'est volontaire, mais les fichiers pdf ne contiennent pas les références de facture. Du coup il ne peut y avoir qu'un seul pdf par client.
    - au niveau des calculs de totaux (coût, TVA ...), ils sont fait en VBA.
    Et du coup lorsque des éléments sont supprimé (via les boutons supprimer lignes), les totaux sont faux.
    Donc si on pouvait utiliser de simple formule Excel pour faire une somme, le résultat serait juste (et vérifiable facilement) dans tous les cas.


    Pour la gestion des attestations 7%, il faudra voir :
    - dans quel dossier sauvegardé les attestations
    - comment savoir si l'adresse de chantier est différente de l'adresse du client
    (un messageBox à chaque demande de création de document ? , une checkbox à cocher dans le devis (et qui sera masquée à l'impression) ?
    - dans que document stoquer l'USF de saisie d'adresse de chantier (lorsqu'elle diffère l'adresse du client).
    - si l'USF de saisie d'adresse de chantier est bien nécessaire : en terme de saisie pour l'utilisateur, quel est le gain par rapport à une saisie directe dans la feuille Excel. (éventuellement avec des listes de validation exemple : ici)

  19. #19
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonsoir BlueMonkey

    Merci de ta réponse qui me permet de voir que des codes aurait faussé dans le temps alors qu'ils sont récemment modifiés
    - je ne sais pas si c'est volontaire, mais les fichiers pdf ne contiennent pas les références de facture. Du coup il ne peut y avoir qu'un seul pdf par client
    code récemment modifié donc a refaire
    du coup lorsque des éléments sont supprimé (via les boutons supprimer lignes), les totaux sont faux.
    pas eu l'idée de contrôler
    dans quel dossier sauvegardé les attestations
    les attestations ne sont pas sauvegarder, quand j'imprime 2 , je les envoie au client qui m'en retourne une avec 1 exemplaire du devis et la je les archive dans un classeur papier
    - comment savoir si l'adresse de chantier est différente de l'adresse du client
    bonne question c'est pourquoi j'avais un usf qui était appelé lors des besoin, comme maintenant j'ai 2 gros chantier ou ce sont des "maisons secondaire"ou les clients n'y habite pas en permanence
    en terme de saisie pour l'utilisateur, quel est le gain par rapport à une saisie directe dans la feuille
    le gain est de trouver plus rapidement les cp et villes (je vais voir le lien que tu propose)et surtout inscrire l'adresse ce qui ne se fait pas avec une liste de validation

    Pascal

  20. #20
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    1 186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 1 186
    Par défaut
    Bonjour,

    Pour les erreurs de nom de fichier PDF et de calcul de total, j'ai regardé dans le code de la feuille dont je suis partis,
    elles y étaient déjà.

    Pour le nom du PDF, c'est très facile à corrigé, pour le total, je vais regardé comment inséré une formule Excel à la place du calcul VBA.

    Pour la conservation d'un format informatique de l'attestation 7%,
    je me disais que de garder un PDF du document imprimé ça ne coute pas cher (en code 2 ligne, en fichier 100 ko par fichier max).
    Et comme il faut pouvoir le transmettre àau Fisc pendant 5%, (envoi de fichier plus pratique que des papier), et qu'en cas d'accident,
    on est bien content d'avoir une copie numérique pour ré-imprimer le papier.
    Maintenant c'est à toi de voir ce que tu souhaite faire ou non.

    Pour la création de l'attestation 7%, ma question étais plus de savoir comment tu souhaitais configurer la génération du document.
    Généralement le mieux est de séparer la génération de document (juste au cas, où il y a un problème lors de l'impression, pour ne pas avoir à ré-enregistré une nouvelle facture, juste pour avoir une impression).

    Après pour le fait de compléter les infos complémentaire, est de remplir les infos client à partir de la facture,
    et de compléter les infos de chantier spécifique (lorsqu'elle sont nécessaire),
    à partir d'un code se trouvant dans le modèle d'attestation.
    Ce code peut être :
    - soit un USF, comme tu l'as posté.
    - soit à base de formule Excel. (voir exemple ci-joint)
    Dans l'exemple, la sélection adresse de chantier différente de l'adresse du client se fait via une CheckBox qui n'apparaît à l'impression.

    Les informations de <Ville> et <Code postal> sont rentrés via des listes de validation
    dont les valeurs se mettent à jour l'une par rapport à l'autre.
    (c'était l'exemple dont je parlais plus tôt).
    Pour retrouver tous les valeurs possibles, il suffit de supprimer le contenu au code postal ou nom de ville.

    A+

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 6 12345 ... DernièreDernière

Discussions similaires

  1. [Débutant] Ajouter des lignes dans un tableau en code behind
    Par Netpasnet dans le forum ASP.NET
    Réponses: 2
    Dernier message: 15/03/2012, 21h09
  2. Ajouter des lignes dans un DataGridView au moment du design?
    Par ferradji dans le forum Windows Forms
    Réponses: 3
    Dernier message: 28/03/2007, 14h05
  3. Ajouter des lignes dans un fichier *.log
    Par Fred2209 dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/12/2006, 15h15
  4. Réponses: 14
    Dernier message: 22/09/2005, 16h49

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