Rechercher une valeur variable dans le nom des onglets

Résolu
Bonjour Le forum,
mon petit souci :
Dans mon fichier ,
chaque onglet contient le mois et l'année ex Aout 21
dans un userform, je souhaiterais quand je valide que mon code retrouve le mois (variable remplie dans mon useform) correspondant, qu'il active l'onglet et après d'autres actions ( dont je connais le code)
je vous remercie pour votre aide.
belle journée a vous

3 réponses

  1. Bonsoir,
    Je me suis peut etre mal exprimé
    dans mon useform:
    j'ai un liste des mois
    quand je valide mon useform il doit retrouver la feuille correspondant au mois dans le userform.
    et le selectionne voici mon code:
    Private Sub VALIDER_Contrat_Click()
    Dim nomf As String
    Dim sh As Worksheet
    nomf = Debut_Contrat_M.Value ' nom de la feuille a selectionner
    For Each sh In Sheets
    If Left(.Value, 8) = nomf.Value Then
    Sheets(nomf).Select

    Range("A7" & Range("A26").End(xlUp).Row + 1).Select
    Range(0, 3).Value = Nom_Freelance.Value
    Range(0, 4).Value = Prenom_Freelance.Value
    Range(0, 5).Value = Tel_Freelance.Value
    Range(0, 6).Value = Statut_Freelance.Value
    Range(0, 11).Value = Nb_jours.Value
    Range(0, 12).Value = TJM_Achat.Value
    Range(0, 13).Value = TJm_Contrat.Value
    Range(0, 14).Value = TJM_Vente.Value
    Range(0, 16).Value = Effort.Value
    Range(0, 18).Value = Duree_Contrat.Value
    Range(0, 20).Value = Nb_jours.Value
    Range(0, 23).Value = Debut_Contrat_J.Value & "/" & Debut_Contrat_M.Value & "/" & Debut_Contrat_A.Value
    End If
    Next sh
    End Sub

    je vous remercie par avance
    titi
    0
    1. Contributeur
      Bonjour,

      mettre une ListBox dans l'UserForm avec ce code:

      Option Explicit
      Private Sub ListBox1_Click()
      If ListBox1.ListIndex = -1 Then Exit Sub
       Sheets(ListBox1.List(ListBox1.ListIndex)).Select
      End Sub
      Private Sub UserForm_Initialize()
      'Déclare la variable objet Worksheet
      Dim Ws As Worksheet
      'Boucle sur toutes les feuille de calcul du classeur. Les onglets graphiques ne sont pas pris
      'en compte.
      'ThisWorkbook correspond à l'objet classeur contenant la macro
      For Each Ws In ThisWorkbook.Worksheets
          'Renvoie le nom de chaque feuille
          ListBox1.AddItem (Ws.Name)
      Next Ws
      End Sub
      


      l'activation de la feuille se fait au clic correspondant dans la Listbox

      https://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-G

      0