Réalisation un ComboBox avecliste déroulante permettant de filter dynamiqu

comme ca pèse un peu la base, j'ai due éliminer certaine partie.

atenttion

comment ne plus avoir cette information .

merci

Re

Un premier point que vous n'avez pas fait et que je vous avais écrit

1. Dans toutes les feuilles mois, vous devez supprimer les lignes vides. feuille Janvier de la ligne 15 à 214 (à moins que vous avez supprimé les données pour le poids du fichier ?). Idem pour les autres feuille Mois.
2. Gestionnaire de noms :
---- il y a des fautes d'orthographe dans le nom livraison et le mois.
---- il y a pas mal de REF# , on supprime ?

3. il y a une liaison vers un fichier Base moule. Normal cela ou il faut supprimer ?

Si c'est votre bon fichier que vous avez posté je peux faire les corrections. dites moi . Sinon je vous écris tout ce qu'il faut corriger


Pour le message, voyez les explications dans ce lien sur le même sujet --> https://forum.excel-pratique.com/s/goto/919839

J'ai supprimer beaucoup de fichiers dans la base pour la rendre légère. Si vous pouvez quelques corrections ou propositions ca va beaucoup m'aider .

merci

J'ai supprimer beaucoup de fichiers dans la base pour la rendre légère.

De fichiers ? ou de feuilles ?
Je peux vous faire les corrections mais cela implique que vous repartez du fichier que je vous donnerai. Dites moi

Merci de répondre aux questions posées dans les 3 points dans mon post précédent.

De fichiers ? ou de feuilles ?

-Oh faite c’est les feuilles que J'ai supprimées

Un premier point que vous n'avez pas fait et que je vous avais écrit

1. Dans toutes les feuilles mois, vous devez supprimer les lignes vides. feuille Janvier de la ligne 15 à 214 (à moins que vous avez supprimé les données pour le poids du fichier ?). Idem pour les autres feuille Mois.

- j’ai supprimé les données pour le poids du fichier

2. Gestionnaire de noms :
---- il y a des fautes d'orthographe dans le nom livraison et le mois.

- ok je vais les corriger

---- il y a pas mal de REF# , on supprime ?

- c’est des parties qui sont supprimées pour alléger le fichier

3. il y a une liaison vers un fichier Base moule. Normal cela ou il faut supprimer ?

- ce n’est pas Normal il faut supprimer ?

Si c'est votre bon fichier que vous avez posté je peux faire les corrections. dites moi . Sinon je vous écris tout ce qu'il faut corriger

-comme c’est un partie de la base que j’ai envoyé, je pense que si vous m’écrivez les parties à corriger ça serait bien.

Merci



1. Dans toutes les feuilles mois, vous devez supprimer les lignes vides. feuille Janvier de la ligne 15 à 214 (à moins que vous avez supprimé les données pour le poids du fichier ?). Idem pour les autres feuille Mois.

- j’ai supprimé les données pour le poids du fichier

Ok.

3. il y a une liaison vers un fichier Base moule. Normal cela ou il faut supprimer ?

- ce n’est pas Normal il faut supprimer ?

Si vous ne la supprimez pas, excel va vous envoyer un message qu'il y a une liaison avec un fichier externe. Vous avez dû faire un copier -coller du fichier BAse Moule.... vers votre fichier tel que posté


Voici les parties à corriger pour l'USF Livraison :

1. En dessous d'option explicit
, rajoutez cette ligne

Dim flag As Boolean

2. Code Enregistrer, à remplacer par celui-ci

Private Sub CmdEnregistrer_Click()
Dim mois As Byte
Dim lig As Integer
Dim sh As String

Call controle

If flag = True Then Exit Sub

On Error Resume Next
mois = Month(CDate(Me.TextDate.Value))
Select Case mois
    Case 1: sh = "JANVIER"
    Case 2: sh = "FEVRIER"
    Case 3: sh = "MARS"
    Case 4: sh = "AVRIL"
    Case 5: sh = "MAI"
    Case 6: sh = "JUIN"
    Case 7: sh = "JUILLET"
    Case 8: sh = "AOUT"
    Case 9: sh = "SEPTEMBRE"
    Case 10: sh = "OCTOBRE"
    Case 11: sh = "NOVEMBRE"
    Case 12: sh = "DECEMBRE"
    Case Else
        MsgBox "Mois non Valide", vbCritical, "Erreur mois"
        Exit Sub
End Select

With Range("livraison_" & sh).ListObject
    If .ListRows.Count = 0 Then 'trouver si ligne dans tableau structuré
        .ListRows.Add: lig = 1 'si pas de ligne
    Else: .ListRows.Add: lig = .ListRows.Count 'si lignes trouvees
    End If
    With .DataBodyRange
        .Item(lig, 1) = CDate(Me.TextDate.Value) 'DATE
        .Item(lig, 2) = Me.CombotypeMachine.Value 'MACHINE
        .Item(lig, 3) = Me.ComboCode.Value 'CODE
        .Item(lig, 4) = Me.TextEquipement.Value
        .Item(lig, 5) = Me.ComboSection.Value 'SECTION
        .Item(lig, 6) = Me.TextHeureEmission.Value 'Heure Emission
        .Item(lig, 7) = Me.TextHeureLivraison.Value 'heure de livrason
        .Item(lig, 8) = Me.TextNomsExecutants.Value 'GESTIONAIRES
    End With
End With
End Sub

Désolé de revenir là dessus mais vous devez utiliser ce code pour vos tableaux structurés
J'ai réactivé la ligne 'item(lig, 4) pour l'équipement, la formule que vous avez dans votre tableau ne me semble pas utile puisque vous utilisez des codes et Userform.

3. Code controle. Ce code servira à vérifier que toutes les combo ou textbox sont complétées. Cela répond à votre demande dans un post précédent

Private Sub controle()
Dim ctl As Control

For Each ctl In UsFSaisieLivraison.Controls
    If TypeName(ctl) <> "Label" Then
        Select Case TypeName(ctl)
            Case "TextBox"
                If Controls(ctl.Name) = vbNullString Then
                     MsgBox "Veuillez compléter la rubrique " & Mid(ctl.Name, 5, Len(ctl.Name)), , "Rubrique incomplète": flag = True: Exit Sub
                End If
            Case "ComboBox"
                If Controls(ctl.Name) = vbNullString Then
                     MsgBox "Veuillez compléter la rubrique " & Mid(ctl.Name, 6, Len(ctl.Name)), , "Rubrique incomplète": flag = True: Exit Sub
                End If
        End Select
    End If
Next ctl
flag = False
End Sub

Rem :
- Une fois terminé, je vous rappelle que vous ne devez avoir aucune ligne sans données dans votre tableau. Si ce n'est pas le cas, sélectionnez les lignes entre les colonnes S et AC, puis faite un click droite et choisir l'option "Supprimer" --> "Lignes de tableau" (vous devez absolument voir lignes de tableau. Si ce n'est pas le case c'est que vous êtes hors de tableau structuré)
- lorsque vous entrez des Heures, vous devez avoir cette structure hh:mm (ex : 11:00)

Faites un test avant de passer à l'USF Corrective

Bonjour!

Faites un test avant de passer à l'USF Corrective

le test de l'USF Livraison a marché parfaitement avec tous les notifications si les combo ou textbox ne sont renseignés.

merci infiniment!.

Bonjour

Même remarque que précédemment, lorsque vous voulez reprendre un message d'un post, utilisez l'icone Citation disponible dans la barre de menu et collez la phrase dans la fenêtre.
J'ai corrigé votre post


Ok on peut passer à l'USF Corrective ?
Cela va aller dans le même sens que pour la livraison.

Ok on peut passer à l'USF Corrective ?

ok bien sur, on peut continuer.

merci beaucoup pour le coaching !, j'apprends de nouvelles truc chaque jours sur le forum.

Dans l'USF corrective, modifiez ceci

1. En dessous d'option explicit , rajoutez la même ligne que dans le point 1 de mon post précédent --> https://forum.excel-pratique.com/s/goto/1202793
2. Code Enregistrer, à remplacer par celui-ci

Private Sub CmdEnregistrer_Click()
Dim mois As Byte
Dim lig As Integer
Dim sh As String

Call controle

If flag = True Then Exit Sub

'If Me.TextDate.Value = "" Then MsgBox "Aucune date saisie", vbCritical, "Saisie date": Exit Sub

On Error Resume Next
mois = Month(CDate(Me.TextDate.Value))
Select Case mois
    Case 1: sh = "JANVIER"
    Case 2: sh = "FEVRIER"
    Case 3: sh = "MARS"
    Case 4: sh = "AVRIL"
    Case 5: sh = "MAI"
    Case 6: sh = "JUIN"
    Case 7: sh = "JUILLET"
    Case 8: sh = "AOUT"
    Case 9: sh = "SEPTEMBRE"
    Case 10: sh = "OCTOBRE"
    Case 11: sh = "NOVEMBRE"
    Case 12: sh = "DECEMBRE"
    Case Else
        MsgBox "Mois non Valide", vbCritical, "Erreur mois"
        Exit Sub
End Select
On Error GoTo 0

'Enregistrer les donnees sur la feuille

With Range("histo_" & sh).ListObject
   If .ListRows.Count = 0 Then                                                          'trouver si ligne dans tableau structuré
        .ListRows.Add: lig = 1                                                           'si pas de ligne
    Else: .ListRows.Add: lig = .ListRows.Count                                           'si lignes trouvees
   End If
   With .DataBodyRange
        .Item(lig, 1) = CDate(Me.TextDate.Value)                                         'DATE
        .Item(lig, 2) = Me.ComboCode.Value                                                 'CODE
        .Item(lig, 3) = Me.TextEquipement.Value                                                            'EQUIPEMENT
        .Item(lig, 4) = Me.ComboSection.Value                                              'SECTION
        .Item(lig, 5) = Me.CombotypeIntervention.Value                                     'TYPE INTERVENTION
        .Item(lig, 6) = Me.TextDI.Value                                                    'N0° BON INTERVENTION
        .Item(lig, 7) = Me.TextAnomalie.Value                                              'ANOMALIE CONSTATEE
        .Item(lig, 8) = Me.TextRapport.Value                                               'RAPPORT D'INTERVENTION
        .Item(lig, 9) = Me.TextPiecesderechange.Value                                      'PIECES DE RECHANGE UTILISEES
        .Item(lig, 10) = Format(CDate(Me.TextDebutIntervention.Value), "dd/mm/yyyy hh:mm") 'DATE & HEURE DEBUT  INTERVENTION'
        .Item(lig, 11) = Format(CDate(Me.TextFinIntervention.Value), "dd/mm/yyyy hh:mm")   'DATE & HEURE FIN INTERVENTION
        .Item(lig, 15) = Me.TextNomsExecutants.Value                                       'EXECUTANTS
        .Item(lig, 16) = Me.TextObsevation.Value                                            'Observation
    End With
    MsgBox "Données enregistrées avec succès", vbInformation, "Enregistrement"
End With
End Sub

3. Code controle. Identique au code donné dans mon post précédent (https://forum.excel-pratique.com/s/goto/1202793) à l'exception de la ligne ci-dessous qui est à modifier pour reprendre le nom de l'USF Corrective

For Each ctl In UsFSaisieCorrectiveAtelier.Controls

Rem :
- Remarque identique concernant les lignes sans données dans votre tableau. Donc à supprimer comme expliqué précédemment.
- lorsque vous entrez les dates et Heures, vous devez avoir cette structure dd/mm/yyyy hh:mm (ex : 15/01/2024 11:00)
Il vous faut un espace entre l'année et le premier caractère de l'heure pour respecter la structure

Faites un test pour voir si c'est ok afin de vérifier si vous avez une erreur. de mon coté cela fonctionne sans souci

Faites un test pour voir si c'est ok afin de vérifier si vous avez une erreur. de mon coté cela fonctionne sans souci

Super! c'est parfait, ca marche comme je l'imaginait, merci beaucoup, pour votre soutient.

Parfait !

A moins que je me trompe, il me semble que tout est bon ?
Dites moi

Si terminé pensez à

cordialement

A moins que je me trompe, il me semble que tout est bon ?

Dites moi

Oui, oui pour ce projet c'est ok, c'est ce que je cherchais.

mais pour deux autres projets que je posterai dans les jours a venir, j'aurai besoins de vos aides également.

une fois encore merci.

Rechercher des sujets similaires à "realisation combobox avecliste deroulante permettant filter dynamiqu"