Outil VBA pour la compta

bonjour à tous

je suis complétement nul en VBA, je souhaiterai faire un petit outil pour me facilité la tache. j'ai bricoler un Userform :

Pour renseigner les nouvelles commandes dans mon tableau « bdd »

Ex : date de commande le 12/01/20 ; date de livraison : 12/02/20 fournisseur : Aromaparis, da :12563, ols :25876, réception :268745 ; montant : 145€ en sélectionnant un des 4 choix.

Click sur « nouveau » est l’enregistrement des données que je rentre ce fait dans « bdd » au format du tableau en respectant l'une des 4 classifications.

Click sur « recherche » : renseigner le fournisseur puis click « rechercher» le résultat renvoie les informations date de commande, fournisseur, da, ols , réception et montant pour l’année en cours sous forme de tableau sur un fichier en PDF et demande l’impression.

Click sur « extraction » définir l’un des 4 choix click renvoie les informations pour l’année en cours sous forme de tableau sur un fichier en PDF et demande l’impression.

Click sur « graphique » renvoie un graphique comparatif pour l’année en cours par rapport à N-1et N-2 sur un fichier en PDF et demande l’impression

Pour la commande "remise à zéro" le clic efface les infos pour rendre userform vierge

et bouton "paramètre" pour déverrouiller le code et la commande "supprimer" pour effacer la ligne du tableau BDD

quelqu'un pourrait-il m'aider SVP, ou si quelqu'un a une solution plus simple? je suis preneur.

encore mille merci de votre attention

36outil-iproc.xlsm (391.10 Ko)

Bonjour

Pour la commande "remise à zéro" le clic efface les infos pour rendre userform vierge

Voici le code à placer dans votre Userform

Private Sub CommandButton7_Click()
'Vider l'Userform
Dim i As Byte
For i = 1 To 6
    With Me
        .Controls("Textbox" & i) = ""
        On Error Resume Next
        .Controls("Optionbutton" & i).Value = False
        On Error GoTo 0
    End With
Next i
End Sub

Je reviens plus tard

Cordialement

génial encore merci beaucoup . à bientôt

Très belle journée.

Re

Click sur « nouveau » est l’enregistrement des données que je rentre ce fait dans « bdd » au format du tableau en respectant l'une des 4 classifications.

En premier, changez ceci dans l'USerform

  • Renommer la textbox3 (DA) en textbox6
  • Renommer la textbox6 (Montant) en textbox3

Ensuite, placez ce code dans l'userform pour l'ajout des données

Private Sub CommandButton2_Click()
'Ajouter des données
Dim dlg As Integer
Dim i As Byte

dlg = Sheets("Bdd").ListObjects("IPROC").DataBodyRange.Rows.Count + 2
For i = 1 To 6
    With Sheets("Bdd")
        .Cells(dlg, i) = Me.Controls("Textbox" & i).Value
        If i < 5 Then
            If Me.Controls("Optionbutton" & i).Value = True Then .Cells(dlg, i + 6) = i
        End If
    End With
Next i
Call CommandButton7_Click
End Sub

Pour la fonction RECHERCHER, je pense qu'il serait plus pratique de créer une userform spécifique avec le choix du fournisseur.

Une fois les données trouvées on peut revenir sur l'userform actuelle.

Votre avis sur ce point ?

Autre question : a quoi correspondent les données DA, OLS et Réceptionné

Crdlt

merci beaucoup DAN, les données DA, OLS et Réceptionné sont des numéro d'enregistrement

DA: N° de la demande d'approvisionnement

OLS: N° du de l'ordre de livraison(bon de commande)

Réceptionné: N° de la réception

super sympa !!

Bonsoir

Vous n'avez pas répondu à la question de l'USF pour la recherche

Autres questions :

  • pour un même fournisseur, est-ce que le DA et / ou l'OLS sont des valeurs uniques ?
  • après la recherche, vous voulez le résultat sous forme de tableau mais avez vous un exemple du tableau final ?

Crdlt

bonjour,

milles excuses, j'ai pas vu toutes les questions. Effectivement, je pense qu'un userform spécifique avec le choix du fournisseur est une bonne solution!

cordialement

Re

Ok mais il y a encore deux questions dans mon dernier post...

Désolé mais j'ai besoin d'info pour avancer

Cordialement

Oui se sont des valeurs unique. Je n' ai pas de tableau pré-défini mais je pense a un tableau comme dans "bdd" mais épurer. Le fournisseur en entête tableau avec date,montant,n° de da, d'ols et de réception et classer par catégorie pour l année en cours. Après si vous avez d autres idées, je suis preneur😁.

Bien cordialement.

Re,

Ok. Mais dans le fichier je vois que le DA de la ligne 1 2 sont identiques alors que les fournisseurs sont différents. Normal cela ??

classer par catégorie pour l année en cours

Cela correspond à quoi les catégories dans votre feuille ?

Sinon je pense qu'avec un tableau croisé dans une autre feuille, on peut faire ce que vous voulez

Cordialement

re,

Effectivement, il peut arrivé que la commande soit affecté a plusieurs "fournisseur" d'où le même numéro DA

Il peut aussi arrivé qu'il y est plusieurs numéro d' OLS et de réception quand je réceptionne les commandes en plusieurs fois:

ex: 05/12/2019 Lyreco 354€ DA 123456 OLS 256987 réception 987456 réception total

ou

05/12/2019 Lyreco 200€ DA 123456 OLS 256987 réception 987456 réception partiel

05/12/2019 lyreco 154€ DA 123456 OLS 256988 réception 897983

dans la réception partiel seul le numéro de DA est identique puisque ce n'est qu'une commande mais la marchandise arrive en plusieurs fois.

Lors bilan annuel, on me demande les résultat dans ces 4 catégories accueil/séminaire, Prévention, Café, Matériels consommable)

J'y ai pensé sur la TCD faire un TCD avec graphique de manière que au clic sur le bouton "graphique" de l'userform me le renvoie en PDF pour l'imprimer.

j'espère que je suis pas trop compliqué

33outil-iproc.xlsx (105.78 Ko)

Bonjour

Mais votre fichier n'est plus le même que le premier et si vous restez sur cette structure je devrai recommencer tout le code.

Je ne peux plus avancer sans que votre feuille Bdd soit finalisée. A cette fin j'ai quelques questions :

  • Pourquoi avez vous ajouté une colonne Annee ?
  • Les 4 dernières colonnes comportaient 1 chiffre de 1 à 4 dans votre premier fichier. Dans le dernier, vous mettez le titre de la colonne à la place du chiffre.

Ce dernier point soulève une question supplémentaire, à savoir que s'il ne peut y avoir qu'une seule donnée par ligne (donc soit café, soit accueil séminaire...), vous pouvez mettre cela dans une colonne plutot que 4

Merci de répondre sur ces 3 points si vous voulez que je continue sur ce projet.

Cordialement

Bonjour DAN,

j'avais oublié de préciser le fichier .xls est un ancienne version avec les TCD que j 'ai récupéré. Le fichier que je joins aujourd'hui c'est la version final avec laquelle j'ai déjà mis tes codes VBA et ce que je savais faire pour le verrouillage. le mot de passe est : BUS2025 Cela est valable pour chaque feuilles verrouillée . "bdd" sera ainsi définitivement. j'ai refais les TCD à l'identique. il n'y aura plus de colonne année et les 4 dernière colonnes resterons des chiffres de 1 à 4 et il ne peut y avoir qu'une seul donnée par ligne soit 1 soit 2 soit 3 soit 4. Encore merci!!

Bonne journée

Bonsoir

Merci du fichier

Il peut aussi arrivé qu'il y est plusieurs numéro d' OLS et de réception quand je réceptionne les commandes en plusieurs fois:

ex: 05/12/2019 Lyreco 354€ DA 123456 OLS 256987 réception 987456 réception total

ou

05/12/2019 Lyreco 200€ DA 123456 OLS 256987 réception 987456 réception partiel

05/12/2019 lyreco 154€ DA 123456 OLS 256988 réception 897983

dans la réception partiel seul le numéro de DA est identique puisque ce n'est qu'une commande mais la marchandise arrive en plusieurs fois.

Donc je peux considérer que le OLS est toujours un numéro unique ?

Crdlt

Oui

Bonjour

Click sur « recherche » : renseigner le fournisseur puis click « rechercher» le résultat renvoie les informations date de commande, fournisseur, da, ols , réception et montant pour l’année en cours sous forme de tableau sur un fichier en PDF et demande l’impression.

dans votre demande vous voulez le resultat dans la forme d'un tableau comme la bdd ou dans un TCD ?

Pour le pdf et l'impression cela peut etre fait manuellement plutot que via code

Crdlt

Plutôt comme le tableau bdd. Ok pour l impression pdf en manuel

Cordialement.

Bonjour

Votre fichier en retour à tester sur les boutons suivants :

- Nouveau : L'ajout des données vide les données dans les textboxes de l'USF

  • Rechercher :
  • -> Le bouton fait apparaître une userform qui vous permet de choisir via la textbox en haut à gauche. Taper quelques lettres du fournisseur pour lequel vous voulez voir les données sous forme de liste en dessous. Un double click sur une des lignes renverra les données dans l'Userform de saisie pour visualiser et éventuellement modifier si besoin (bouton Modifier). A noter que le mode Rechercher désactive le bouton "Nouveau" jusqu'à ce que vous ayez terminé (Boutons Modifier ou remise à 0).

- Modifier : Le click sur le bouton modifier modifiera la feuille dbb et vide l'userform saisie puis réactive le bouton "Nouveau"

- Extraction : le bouton extract fait apparaitre une userform. Choisissez dans les deux listes déroulantes le fournisseur et l'année. Le résultat sera finalisé en feuil1 (feuille à renommer selon votre choix)

Crdlt

C'est super sa me convient parfaitement. Pour le bouton supprimé, tu prévois quelque chose? en tout cas chapeau bas Monsieur DAN

cordialement

Bonsoir

Si le bouton supprimer est destiné à supprimer une ligne dans la feuille bdd, on peut proceder comme pour le bouton modifier. Sauf que dans ce cas, en clquant sur le bouton Supprimer, cela supprimera la ligne dans la feuille bdd

Cela vous convient cela ?

Rechercher des sujets similaires à "outil vba compta"