Réinitialisation portion séquence sub sur modification choix utilisateur

Bonjour à tous,

Je me trouve actuellement face à un problème que je n'arrive pas à résoudre très probablement parce que cela va au delà de mes connaissances actuelles en vba.

Je souhaite créer une nouvelle feuille d'import que j'initiale à partir d'une useform.

La useforme contient entre autre les champs suivants (voir image en fin de message):

- Adresse du fichier source -> l'utilisateur fait une recherche sur l'ordi ou le réseau et sélectionne le fichier. Le lien hypertexte du fichier est alors renseignée dans la zone "adresse du fichier source". Une fois l'adresse renseignée, l'utilisateur valide le lien et déclenche l'import des noms des feuilles présentes dans le classeur source.

- Nom de la feuille source -> L'utilisateur choisi dans la liste déroulant renseigné suite à l'import, la feuille à importer. Une fois la feuille sélectionnée, la macro importe automatiquement les noms des tableaux présents dans la feuille.

- Nom du tableau source -> L'utilisateur choisi dans la liste déroulante renseignée suite à l'import, le tableau à importer.

- ....

Mon problème est que cette macro n'autorise pas le droit à l'erreur dans la sélection de la feuille ou du tableau à importer. Autrement dit, je souhaiterai que l'import se réinitialise automatiquement dès que l'utilisateur change le "Nom de la feuille source" ou le "Nom du tableau source". Je pensais que cela était possible avec une boucle mais je n'arrive pas à obtenir ce que je veux.

Auriez-vous donc une solution, des idées?

Useform d'import:

useform
Private Sub Validation_Click()

Dim Cellule As Range
Dim Désignation As String
Dim nomChoix As String
Dim oClasseurSource As Workbook
Dim oClasseurDestination As Workbook
Dim oFeuilleSource As Worksheet
Dim oFeuilleDestination As Worksheet
Dim WksSource As Worksheet
Dim oTableauDestination As ListObject

Set oClasseurDestination = ThisWorkbook

Set oFeuilleDestination = getFeuilleNommée(oClasseurDestination, "wksParamètres")

Set oTableauDestination = getTableau(oFeuilleDestination, "TBDNomsFeuillesSource")
    oVider_Lignes oTableauDestination

Set oClasseurSource = getClasseur(txtAdresse)

    For Each WksSource In oClasseurSource.Worksheets
        Désignation = WksSource.Name
        'Sub d'import du nom des feuilles du fichier source, ces données sont stockées dans un tableau de oClasseurDestination
        Ajoute_Ligne Désignation, oTableauDestination

    Next

    'Alimentation de la liste déroulante de choix des feuilles à importer à partir des données stockées
    For Each Cellule In oTableauDestination.DataBodyRange
        nomChoix = Cellule.Value
        ListeChoixFeuilles.AddItem nomChoix
    Next

    'Attente du choix de la feuille à importer par l'utilisateur
    While ListeChoixFeuilles = ""
        DoEvents
    Wend

Set oFeuilleSource = getFeuille(oClasseurSource, ListeChoixFeuilles)

Set oTableauDestination = getTableau(oFeuilleDestination, "TBDNomsTableauxSource")
    oVider_Lignes oTableauDestination

    For Each Tableau In oFeuilleSource.ListObjects
        Désignation = Tableau.Name
        'Sub d'import du nom des tableaux de la feuille source sélectionnée, données stockée dans un tableau de oClasseurDestination
        Ajoute_Ligne Désignation, oTableauDestination

    Next

    'Alimentation de la liste déroulante de choix pour choisir le tableau à importer
    For Each Cellule In oTableauDestination.DataBodyRange
        nomChoix = Cellule.Value
        ListeChoixTableaux.AddItem nomChoix
    Next

    'Attente du choix du tableau à importer par l'utilisateur
    While ListeChoixTableaux = ""
        DoEvents
    Wend

Fermeture_Classeur oClasseurSource

End Sub

Merci

Bonjour TheWhorehouse

Merci de joindre un fichier anonymisé pour que l'on puisse t'aider

@+

Rechercher des sujets similaires à "reinitialisation portion sequence sub modification choix utilisateur"