Probleme de filtration et de localisation

bonjours, je suis novice dans excel j'ai des ressource limitee et j'ai besoin d'aide donc voila mon probleme j'ai un fichier excel avec une base de donne que je veux filtrer et localiser les obsolete\hm\Reworrk \EBT\APT avec VBA j'ai fais un userforum et j'ai creer des bouton et textebox j'ai fais des recherche sur internet pour la programmation mais j'ai toujours un probleme dans la compliation

2 réponses

  1. Contributeur Ambassadeur
    bonjour, peux-tu décrire ton problème de compilation?
    0
    1. bah voila le probleme c plutot dans la programmation que dans la compilation j'ai fais un boutou pour la localisation mais j ai un probleme dans la programmation j'ai chercher dans youtube etc mais il me montre pas ce que je veux et aussi j'ai un probleme dans la filtration :
      Option Explicit
      Private Sub CommandButton1_Click()
      ObsoletePN
      End Sub
      Sub ObsoletePN()
      'déclaration des variables :
      Dim Trouve As Range, PlageDeRecherche As Range
      Dim Valeur_Cherchee As String, Obsolete As String

      '********* à adapter ***********
      'affectation de valeurs aux variables :
      'on cherche le mot
      Valeur_Cherchee = TextBox1.Text
      'dans la première colonne de la feuille active
      Set PlageDeRecherche = ActiveSheet.Columns(2) 'colonne B
      '*******************************

      'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
      Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)

      'traitement de l'erreur possible : Si on ne trouve rien :
      If Trouve Is Nothing Then
      'ici, traitement pour le cas où la valeur n'est pas trouvée
      obsoleteTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
      Else
      'ici, traitement pour le cas où la valeur est trouvée
      obsoleteTrouvee = Trouve.Obsolete
      End If
      MsgBox obsoleteTrouvee
      'vidage des variables
      Set PlageDeRecherche = Nothing
      Set Trouve = Nothing
      End Sub
      Private Sub CommandButton2_Click()
      Old HM
      End Sub
      Sub Cherche_HM()
      'déclaration des variables :
      Dim Trouve As Range, PlageDeRecherche As Range
      Dim Valeur_Cherchee As String, obsoleteTrouvee As String

      '********* à adapter ***********
      'affectation de valeurs aux variables :
      'on cherche le mot
      Valeur_Cherchee = TextBox2.Text
      'dans la première colonne de la feuille active
      Set PlageDeRecherche = ActiveSheet.Columns(4) 'colonne D
      '*******************************

      'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
      Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)

      'traitement de l'erreur possible : Si on ne trouve rien :
      If Trouve Is Nothing Then
      'ici, traitement pour le cas où la valeur n'est pas trouvée
      obsoleteTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
      Else
      'ici, traitement pour le cas où la valeur est trouvée
      obsoleteTrouvee = Trouve.Obsolete
      End If
      MsgBox obsoleteTrouvee
      'vidage des variables
      Set PlageDeRecherche = Nothing
      Set Trouve = Nothing
      End Sub
      PS:ce dernier code je me suis inspirer d'une autre personne dans commentcamarche qui as le meme probleme que le mien
      0
    2. Contributeur Ambassadeur
      @rookie_3362peux-tu utiliser les balises de code (et indiquer basic)?
      et, bien sûr, expliquer ton problème!
      0
    3. il me donne la localisation ou se trouve obsolete ou le HM moi je veux juste par exemple en entrant un HM ou PN il me donne automatique tout les donner de ce dernier j'ai reussi la localisation mais moi il me faux la tache precedente merci pour votre temps vraiment merci
      0
  2. Option Explicit
    Private Sub CommandButton1_Click()
    ObsoletePN
    End Sub
    Sub ObsoletePN()
    'déclaration des variables :
    Dim Trouve As Range, PlageDeRecherche As Range
    Dim Valeur_Cherchee As String, Obsolete As String

    '********* à adapter ***********
    'affectation de valeurs aux variables :
    'on cherche le mot
    Valeur_Cherchee = TextBox1.Text
    'dans la première colonne de la feuille active
    Set PlageDeRecherche = ActiveSheet.Columns(2) 'colonne B
    '*******************************

    'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
    Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)

    'traitement de l'erreur possible : Si on ne trouve rien :
    If Trouve Is Nothing Then
    'ici, traitement pour le cas où la valeur n'est pas trouvée
    obsoleteTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
    Else
    'ici, traitement pour le cas où la valeur est trouvée
    obsoleteTrouvee = Trouve.Obsolete
    End If
    MsgBox obsoleteTrouvee
    'vidage des variables
    Set PlageDeRecherche = Nothing
    Set Trouve = Nothing
    End Sub
    Private Sub CommandButton2_Click()
    Old HM
    End Sub
    Sub Cherche_HM()
    'déclaration des variables :
    Dim Trouve As Range, PlageDeRecherche As Range
    Dim Valeur_Cherchee As String, obsoleteTrouvee As String

    '********* à adapter ***********
    'affectation de valeurs aux variables :
    'on cherche le mot
    Valeur_Cherchee = TextBox2.Text
    'dans la première colonne de la feuille active
    Set PlageDeRecherche = ActiveSheet.Columns(4) 'colonne D
    '*******************************

    'méthode find, ici on cherche la valeur exacte (LookAt:=xlWhole)
    Set Trouve = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)

    'traitement de l'erreur possible : Si on ne trouve rien :
    If Trouve Is Nothing Then
    'ici, traitement pour le cas où la valeur n'est pas trouvée
    obsoleteTrouvee = Valeur_Cherchee & " n'est pas présent dans " & PlageDeRecherche.Address
    Else
    'ici, traitement pour le cas où la valeur est trouvée
    obsoleteTrouvee = Trouve.Obsolete
    End If
    MsgBox obsoleteTrouvee
    'vidage des variables
    Set PlageDeRecherche = Nothing
    Set Trouve = Nothing
    End Sub
    0
    1. Contributeur Ambassadeur
      peux-tu indiquer Basic quand tu utilises les balises pour du VBA?
      0
    2. j'ai fais ce que t as demander mais ca marche pas pour le probleme que j'ai est ce que vous avez une solution
      0
    3. Contributeur Ambassadeur
      @rookie_3362je n'ai pas compris ce que tu voulais réaliser ni ce qui ne marchait pas avec ton code.
      0