Recherche fichier
Résolu
ddh74
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
ddh74 Messages postés 30 Date d'inscription Statut Membre Dernière intervention -
ddh74 Messages postés 30 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Voici mon problème:
j'utilise le code cidessous pour rechercher des fichiers et celui-ci marche très bien, mais lorsque j'ai rajouté des sous dossiers à mon dossier "Factures sav" la recherche dans les sous dossiers ne marche pas. Quelqu'un peut-il me donner une solution.
Merci d'avance
Private Sub Sous_Pdf_Click()
Dim NuméroDeFactureStr As String
Dim ClientStr As String
NuméroDeFactureStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
ClientStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![Client]
DoCmd.Close
Dim Chemin, Fichier, Absolu, hwndSim As String
Absolu = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures Sav\"
Fichier = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
'On ne continue que si un fichier a été sélectionné.
If Fichier <> "" Then
MsgBox ("Facture numéro: " & NuméroDeFactureStr & vbCrLf & vbCrLf & vbCrLf & "Mr: " & ClientStr)
'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
Chemin = Absolu & Fichier & ".pdf"
' Chemin = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures sav\50813002.pdf"
'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)
Else
MsgBox "Aucun fichier sélectionné"
End If
End Sub
Voici mon problème:
j'utilise le code cidessous pour rechercher des fichiers et celui-ci marche très bien, mais lorsque j'ai rajouté des sous dossiers à mon dossier "Factures sav" la recherche dans les sous dossiers ne marche pas. Quelqu'un peut-il me donner une solution.
Merci d'avance
Private Sub Sous_Pdf_Click()
Dim NuméroDeFactureStr As String
Dim ClientStr As String
NuméroDeFactureStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
ClientStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![Client]
DoCmd.Close
Dim Chemin, Fichier, Absolu, hwndSim As String
Absolu = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures Sav\"
Fichier = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
'On ne continue que si un fichier a été sélectionné.
If Fichier <> "" Then
MsgBox ("Facture numéro: " & NuméroDeFactureStr & vbCrLf & vbCrLf & vbCrLf & "Mr: " & ClientStr)
'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
Chemin = Absolu & Fichier & ".pdf"
' Chemin = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures sav\50813002.pdf"
'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)
Else
MsgBox "Aucun fichier sélectionné"
End If
End Sub
A voir également:
- Recherche fichier
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
13 réponses
Bonjour,
Avez-vous mis la ligne de code pour declarer la fonction SellExecutForExplore dans un module???
votre programme fonctionne. Quelle erreur avez-vous
Avez-vous mis la ligne de code pour declarer la fonction SellExecutForExplore dans un module???
votre programme fonctionne. Quelle erreur avez-vous
Re,
Absolu = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures Sav\"
Y a pas de sous-dossier dans facture sav !!!
Absolu = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures Sav\"
Y a pas de sous-dossier dans facture sav !!!
je m'exprime peut être mal mais je voudrais faire la recherche sur l'ensemble du dossier facture sav et ces sous dossiers
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Oui, mais vous pouvez montrer le code pour la recherche ????? Parce qu'il n'y a pas qu'un, donc le votre serait utile.
Oui, mais vous pouvez montrer le code pour la recherche ????? Parce qu'il n'y a pas qu'un, donc le votre serait utile.
Re,
J'avais trouve du code, sur le net, pour remplacer la fonction application.FileSearch dans excel2007. Utilisation des API des windows
'Declarations et Function a mettre dans un module
A+
J'avais trouve du code, sur le net, pour remplacer la fonction application.FileSearch dans excel2007. Utilisation des API des windows
'Declarations et Function a mettre dans un module
Private Declare Function SearchTreeForFile Lib "imagehlp" (ByVal RootPath As String, ByVal InputPathName As String, ByVal OutputPathBuffer As String) As Long
Private Const MAX_PATH = 260
Declare Function ShellExecuteForExplore Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, lpParameters As Any, lpDirectory As Any, ByVal nShowCmd As Long) As Long
Private Function Recherche_Path(R As String, F As String) As String
Dim T As String, resu As Long, flag_ok As Boolean
T = String(MAX_PATH, 0)
resu = SearchTreeForFile(R, F, T)
If resu <> 0 Then
Recherche_Path = Left$(T, InStr(1, T, Chr$(0)) - 1) ': Exit Function
End If
End Function
'-------------------------------------------------
Private Sub Sous_Pdf_Click()
Dim NuméroDeFactureStr As String
Dim ClientStr As String
Dim Chemin, Fichier As String, Absolu As String, hwndSim As String
NuméroDeFactureStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
ClientStr = [Forms]![Sav recherche]![sfmRecherche].[Form]![Client]
Fichier = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
DoCmd.Close
Absolu = "C:\Users\Christian\Documents christian\Documents ScanSoft\Factures Sav\"
'On ne continue que si un fichier a été sélectionné.
If Fichier <> "" Then
Fichier = Fichier & ".PDF"
MsgBox ("Facture numéro: " & NuméroDeFactureStr & vbCrLf & vbCrLf & vbCrLf & "Mr: " & ClientStr)
'Recherche chemin du fichier
Chemin = Recherche_Path(Absolu, Fichier)
If Chemin <> "" Then
'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)
Else
MsgBox ("Pas trouvé Chemin, Fichier inexsitant")
End If
Else
MsgBox "Aucun fichier sélectionné"
End If
End Sub
A+
Re,
Qu'est-ce que vous ne comprenez pas ??? C'est votre code modifie pour rechercher ce que vous voulez.
A+
Qu'est-ce que vous ne comprenez pas ??? C'est votre code modifie pour rechercher ce que vous voulez.
A+
j'ai mis ce code dans un module nommé module1
Private Declare Function SearchTreeForFile Lib "imagehlp" (ByVal RootPath As String, ByVal InputPathName As String, ByVal OutputPathBuffer As String) As Long
Private Const MAX_PATH = 260
Declare Function ShellExecuteForExplore Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, lpParameters As Any, lpDirectory As Any, ByVal nShowCmd As Long) As Long
Private Function Recherche_Path(R As String, F As String) As String
Dim T As String, resu As Long, flag_ok As Boolean
T = String(MAX_PATH, 0)
resu = SearchTreeForFile(R, F, T)
If resu <> 0 Then
Recherche_Path = Left$(T, InStr(1, T, Chr$(0)) - 1) ': Exit Function
End If
End Function
Mais lorsque je compile ma procedure un message erreur sub ou fonction non définie
Private Declare Function SearchTreeForFile Lib "imagehlp" (ByVal RootPath As String, ByVal InputPathName As String, ByVal OutputPathBuffer As String) As Long
Private Const MAX_PATH = 260
Declare Function ShellExecuteForExplore Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, lpParameters As Any, lpDirectory As Any, ByVal nShowCmd As Long) As Long
Private Function Recherche_Path(R As String, F As String) As String
Dim T As String, resu As Long, flag_ok As Boolean
T = String(MAX_PATH, 0)
resu = SearchTreeForFile(R, F, T)
If resu <> 0 Then
Recherche_Path = Left$(T, InStr(1, T, Chr$(0)) - 1) ': Exit Function
End If
End Function
Mais lorsque je compile ma procedure un message erreur sub ou fonction non définie