Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Programmes VBA pour trier

Vidal Salvador

XLDnaute Nouveau
Bonsoir à tous.
J'ai des difficultés à trouver un programme VBA fiable pour mon exercice. Dans le fichier Excel ci-joint nous avons deux tableaux principaux l'un qui comporte tous les équipements et installations et l'autre qui comporte les équipements et installations par liste. J'aimerais avoir un programme VBA qui me permettra l'activation d'un bouton en considérant les deux tableaux. Pour être plus clair, je veux que, quand je sélectionne un équipements sur la liste déroulant, en fonction de l'équipement que le bouton qui étant grisé devient normal en respectant les tableaux des listes.
Merci cordialement.
 

Pièces jointes

  • FICHE SUIVI MACHINE HISTORIQUE CFAO CMB.xlsm
    372.6 KB · Affichages: 7

vgendron

XLDnaute Barbatruc
Bonjour

la demande n'est vraiment pas claire..
tu parles de deux tableaux.... lesquels?? ils sont ou? ils s'appellent comment

et pas compris ce que tu veux lorsque tu selectionnes un élement du combobox
 

vgendron

XLDnaute Barbatruc
bon.. parce que je suis bien luné

VB:
Function LookInTable(Equipement As String) As String

    With Sheets("Formulaire")
        For Each TS In .ListObjects
            If TS.Name <> "TEquipements" Then
                Set trouve = TS.Range.Find(Equipement)
                If Not trouve Is Nothing Then
                    LookInTable = TS.Name
                    Exit Function
                End If
            End If
        Next TS
    End With
End Function

'**************************************************************
'Proccédure permettant d'activer le bouton d'ajout des sections
'**************************************************************
Private Sub txtCaractéristiques_Change()
    NomBouton = "Btn" & WorksheetFunction.Substitute(LookInTable(Me.cboEquipements), "Liste", "")
    Me.Controls(NomBouton).Enabled = True
'    If txtCaractéristiques <> "" Then
'        btnBoulangerie.Enabled = True
'        btnTraiteur.Enabled = True
'        btnCharcuterie.Enabled = True
'        btnPoissonnerie.Enabled = True       'Activer le bouton
'        btnBoucherie.Enabled = True
'        btnMeubles.Enabled = True
'        btnClimatisation.Enabled = True
'        btnElectricité.Enabled = True
'        btnRéception.Enabled = True
'
'    Else
'        btnBoulangerie.Enabled = False
'        btnTraiteur.Enabled = False
'        btnCharcuterie.Enabled = False
'        btnPoissonnerie.Enabled = False
'        btnBoucherie.Enabled = False          'Désactiver le bouton
'        btnMeubles.Enabled = False
'        btnClimatisation.Enabled = False
'        btnElectricité.Enabled = False
'        btnRéception.Enabled = False
'
'    End If
           
End Sub
 

Vidal Salvador

XLDnaute Nouveau
Par exemple si je choisis un équipement sur un ComboBox, cet équipement et trier par secteur qui va activer le Bouton de commande de la section choisie dans le tableau.
Merci cordialement.
 

Pièces jointes

  • FICHE SUIVI MACHINE HISTORIQUE CFAO CMB.xlsm
    372.6 KB · Affichages: 3

vgendron

XLDnaute Barbatruc
je ne comprend rien à ce que tu dis.. tu parles d'un tri..? trier quoi?? ou ca?

ton fichier en poste #4: c'est quoi la différence avec le tout premier??

voir en PJ
quand tu selectionnes un item dans le combobox equipement,
la fonction "lookInTable" va chercher dans quelle table l'équipement se trouve
ensuite, le bouton associé est selectionné

pour le reste.. il va falloir que tu fasses un effort de décrire ton besoin dans un français correct et intelligible

PS, j'ai modifié des noms de tables pour qu'ils correspondent au nom des boutons de ton formulaire
 

Pièces jointes

  • FICHE SUIVI MACHINE HISTORIQUE CFAO CMB.xlsm
    380.1 KB · Affichages: 0

vgendron

XLDnaute Barbatruc
Dans la mesure où ton fichier utilise des tables structurées, autant les exploiter

1) inutile de garder 50 lignes vides
2) quand tu cliques sur un des boutons pour ajouter, c'est toujours le meme code, à la feuille près
==> UN seul code "AddInTable"

idem, j'ai renommé des feuilles pour que les noms correspondent
 

Pièces jointes

  • FICHE SUIVI MACHINE HISTORIQUE CFAO CMB.xlsm
    356.2 KB · Affichages: 1

Vidal Salvador

XLDnaute Nouveau
Merci beaucoup Mr. VGENDRON votre programme fonctionne parfaitement.
J'aurais juste une petite faveur à vous demandez, j'aimerais que vous ajoutez les commentaires sur les codes que vous m'avez envoyé.
Merci cordialement.
 

Pièces jointes

  • FICHE SUIVI MACHINE HISTORIQUE CFAO CMB (1).xlsm
    356.2 KB · Affichages: 0

Discussions similaires

  • Résolu(e)
Microsoft 365 Macro VBA
Réponses
16
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…