agir sur le fichier selectionné via Application.GetOpenFilename

vbanoob77

XLDnaute Nouveau
Bonjour tout le monde,

Je cherche un moyen de lancer la recherche de 2 chaines de caractères différentes dans le fichier que l'utilisateur a sélectionné.

Mon code
Code:
Sub test()
Dim Chemin As String
Dim wbExcel As Workbook

Nom_Fichier = Application.GetOpenFilename

If Nom_Fichier <> False Then
    Workbooks.Open Filename:=Nom_Fichier
Set wbmyWb = Workbooks.Open(Nom_Fichier)
  wbmyWb.Activate
End If

End Sub
Il permet simplement d'ouvrir une fenêtre invitant à choisir un fichier.
Le but serait que une fois le fichier sélectionné la recherche des mots "pas" et "ko" se lance automatiquement de manière à afficher uniquement les lignes contenant ces mots. C'est la première fois que je suis amené à faire ça et je dois reconnaitre que je rame.

Merci de votre aide.
 

Yaloo

XLDnaute Barbatruc
Re : agir sur le fichier selectionné via Application.GetOpenFilename

Bonsoir vbanoob77 et bienvenu sur le forum,

Que souhaites-tu trouver une ou des adresses ?

Est-ce des mots "entiers" ou seulement des syllabes ?

Comment souhaites-tu récupérer tes "trouvailles" ? Sous quelle forme ?

Mets un fichier exemple de ce que tu souhaites, on verra si c'est possible, adaptable ou pas faisable.

A te relire

Martial
 

vbanoob77

XLDnaute Nouveau
Re : agir sur le fichier selectionné via Application.GetOpenFilename

Bonjour Martial,

Je n'ai pas encore le fichier en question à disposition mais je sais qu'il ne comportera qu'une colonne avec une phrase de texte sur chaque ligne. Le but sera de rechercher "pas" et "ko" dans chaque lignes et idéalement de copier toutes les lignes contenant ces mots sur un nouveau feuillet. Je pense que je dois utiliser la commande find mais je ne sais pas comment.
 

Yaloo

XLDnaute Barbatruc
Re : agir sur le fichier selectionné via Application.GetOpenFilename

Bonjour vbanoob77,

Avec une macro dans ce type là, à voir puisque pas de fichier :(

VB:
Option Explicit
Sub test()
Dim Nom_Fichier As Variant, j&, i&
Dim wbmyWb
Cells.ClearContents
Nom_Fichier = Application.GetOpenFilename

If Nom_Fichier <> False Then
  Set wbmyWb = Workbooks.Open(Nom_Fichier)
  j = 2
  With wbmyWb.Sheets(1)
    For i = 1 To .[A65536].End(xlUp).Row
      If .Cells(i, 1) Like "*pas*" And .Cells(i, 1) Like "*ko*" Then
        ThisWorkbook.Sheets(1).Cells(j, 1) = .Cells(i, 1)
        ThisWorkbook.Sheets(1).Cells(j, 2) = i
        j = j + 1
      End If
    Next
  End With
  wbmyWb.Close
  [A1] = "Mots trouvés": [B1] = "Lignes"
  Columns("A:B").EntireColumn.AutoFit
End If
End Sub

A+

Martial
 

Discussions similaires

Réponses
1
Affichages
298
Compte Supprimé 979
C

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin