Création d'une BDD outils

Bonjour,

Je suis en train de créer une BDD nous permettant de gérer notre outillage.
Pour ce faire, j'ai déjà créer un formulaire mentionnant les infos à remplir pour gérer nos outillages

J'aimerais pour terminer savoir si il était possible d'incrémenter dans une colonne un numéro par rapport à un numéro d'une autre . Je m'explique.

Je veux que quand je créé la ligne avec un numéro de plan 1234 ma colonne identification unique de l'outil soit 1. Si le 1 existe déjà de mon plan 1234 je veux que ça soit 2 et ainsi de suite. (pour info ma colonne N° de plan et en "E" et identification en "F" si des personnes ont des propositions .

Ca serait top

Merci d'avance
Thomas

Bonsoir

Cordialement

Bonsoir,

une proposition simple sans tableau structuré, sans test de validité de réponse etc... Car en l'absence de fichier je fais au plus simple pour exposer une des solutions.

Un USF avec le nom d'un outil, son plan, un bouton valider et ceci inscrit les données à la suite de la plage de données, le numéro d'ID s'incrémente en fonction du nombre de plan identique présent dans la colonne E.

Le Fichier :

10id-plan-lrd.xlsm (18.84 Ko)

@ bientôt

LouReeD

Bonjour,

merci pour vous retour, effectivement pas simple sans fichier

Je vous le joins .

Ce que j'aimerais si c'est possible c'est que pour le numéro de plan xxxx45 si l'identification unique n°1 existe alors que lrosque je créé la ligne depuis le formulaire ça l'incrémente en n°2

Pensez vous cela possible ?

Merci d'avance

Thomas

Bonjour

Ce que j'aimerais si c'est possible c'est que pour le numéro de plan xxxx45 si l'identification unique n°1 existe alors que lrosque je créé la ligne depuis le formulaire ça l'incrémente en n°2

En fait si je prends le plan xxxx84, vous voudriez l'identification à 1 en F9 et à 2 en F10

NB: je vois quelques améliorations à faire au niveau de votre usf. Notamment au niveau Rowssource. Comme toujours dit de multiples fois, il faut éviter cette fonction qui pose parfois des soucis et procéder avec la méthode additem ou list. Je les fais ?

Bonjour à tous !

Faut que je signale un problème de transparence de mes messages @ Sébastien ou quoi ?

@ bientôt

LouReeD

Oui je veux bien pour les modifs

Concernant l'identification je ne veux pas que l'identification passe à 2 en F10, enfin je veux qu'elle passe à 2 en F10 uniquement si il y a déjà un numéro 1 de ce plan avant.
Si il y en a déjà 2 avant F10 alors ce numéro devra etre 3 (ceci est l'identification unique d'un outil)

Merci @LouReed, je n'avais pas vu votre retour.

Je vais regarder cela , merci beaucoup pour votre aide , je vous redis

Oui je veux bien pour les modifs

Déjà dans l'usf, pour toutes les textbox, supprimez la valeur Rowssource
Ensuite ajoutez ce code dans l'usf

Private Sub UserForm_Initialize()

With Worksheets("Liste")
    cboLigne.List = .ListObjects("Ligne").DataBodyRange.Value
    cboProduit.List = .ListObjects("PRODUIT").DataBodyRange.Value
    cboplan.List = .ListObjects("PLAN").DataBodyRange.Value
    cboProd.List = .ListObjects("PROD").DataBodyRange.Value
    cboType.List = .ListObjects("Type").DataBodyRange.Value
    cboLocalisation.List = .ListObjects("LOCALISATION").DataBodyRange.Value
End With
End Sub

Concernant l'identification je ne veux pas que l'identification passe à 2 en F10, enfin je veux qu'elle passe à 2 en F10 uniquement si il y a déjà un numéro 1 de ce plan avant.

Donc dans votre fichier c'est bien ce que je vous ai écrit dans mon post précédent, F9 devrait avoir la valeur 1 et F10 la valeur 10

Oui c'est exactement ça LouReed super !!

Je vais essayer d'adapter ta solution à mon tableau

Une autre question, une fois l'outillage créé , je pense concaténer le plan + le n° uniquement dans la colonne A

Ensuite savez vous si il est possible d'ajouter une macro permettant pour chaque N° en colonne A de m'ouvrir une fiche excel à part que j'enregistrerais sur le réseau avec par exemple des résultats de contrôle dimensionnel, etc...

re

Voilà les deux codes à placer dans votre fichier. Ensuite je vous laisse continuer avec LooReed

1. Pour ajouter

Private Sub btnAjout_Click()
Dim lig As Long

With Worksheets("OUTILLAGE").ListObjects("BDDOutillage")
    If .ListRows.Count = 0 Then
        .ListRows.Add: lig = 1
    Else: .ListRows.Add: lig = .ListRows.Count
    End If

    With .DataBodyRange
        .Item(lig, 1) = cboLigne.Value
        .Item(lig, 2) = cboType.Value
        .Item(lig, 3) = cboProduit.Value
        .Item(lig, 4) = txtFormat.Value
        .Item(lig, 5) = cboplan.Value
        .Item(lig, 6) = txtidentification.Value
        .Item(lig, 7) = txtMatiere1.Value
        .Item(lig, 8) = txtMatiere2.Value
        .Item(lig, 9) = txtcarac.Value
        .Item(lig, 10) = txtRemarques.Value
        .Item(lig, 11) = cboProd.Value
        .Item(lig, 12) = cboLocalisation.Value
    End With
End With

MsgBox "L'outillage a bien été ajoutée à la BDD", vbOKOnly + vbInformation, "Confirmation"
End sub

2. Pour l'identification, remplacez le code que vous avez par celui ci

Private Sub cboplan_Change()
Dim identif As Byte

With Worksheets("OUTILLAGE").ListObjects("BDDOutillage")
    identif = WorksheetFunction.CountIf(.ListColumns(5).DataBodyRange, cboplan.value) + 1
End With

If cboplan <> "" Then
    btnAjout.Enabled = True
    txtidentification = identif
Else
    btnAjout.Enabled = False
End If

End Sub

Cordialement

Merci Dan,

Pour la 2eme partie il me dit cboplan_change() "nom ambigue"

Bonjour,

Vous avez mis la sub en doublon

image

A+

Pour la 2eme partie il me dit cboplan_change() "nom ambigue"

le code s'arrête où ?

NB : petite erreur dans la ligne Identif = worksheetfunction, vous devez replacer COUNT par COUNTIF. J'ai corrigé dans le code de mon post précédent

Count ou counIF ne fonctionne pas

image

Je n'ai pas de souci de mon coté avec le fichier que vous avez posté
Mais vous n'avez pas recopié le code comme je vous l'ai donné dans mon post

il y a deux fois les mêmes instructions

Bonsoir Rossi19u !

Désolé du retard et merci pour vos remerciements ! Bien que ce que j'ai proposé ne soit pas intégré à votre fichier et ce n'est pas non plus optimisé, mais c'était pour vous montrer le principe...

Je vous laisse entre de bonnes mains ! les deux MODOS du site ! C'est pour dire !

Bonne continuation dans votre projet.

@ bientôt

LouReeD

Hello

super ça fonctionne bien.

Une autre question... si je veux qu'une fois que j'ai ajouté et enregistré les infos depuis le formulaire, les données s'effacent de mon formulaire
de sorte à que je ne puis pas par exemple ajouter plusieurs fois le plan XXXX45 n°7 juste en cliquant 3x sur ajout

Merci d'avance

Je remets mon fichier dernière version

Bonjour

Une autre question... si je veux qu'une fois que j'ai ajouté et enregistré les infos depuis le formulaire, les données s'effacent de mon formulaire

Dans la macro Private Sub btnajout_click, vous pouvez ajouter cette instruction juste avant le END SUB

Call bnteffacer_Click

Si ok ->

Cordialement

Désolé Dan, je pensais que ça fonctionnait bien, en remettant mon tableau au propre je me rends compte que ça ne marche plus.

Lorsque j'exécute la macro il me met une erreur d'exécution '5'.

Alors que tout à l'heure les numéros s'incrémentais correctement ..

image image
Rechercher des sujets similaires à "creation bdd outils"