Suppose que tu veux voir la location d'un fichier spécifique dans l'explorateur de Windows : Pour définir cette variable avec le chemin seulement ou un fichier dans un répertoire particulier... c'est selon ce que tu désires.... CheminEtFichier = "c:windowsnotepad.exe" OU CheminEtFichier = "c:UsersTon profilDocuments"
Explorateur Windows va s'ouvrir en sélectionnant soit le fichier ou le répertoire à l'écran.
Exemple : '------------------------------------------------------------------------------------ Sub Voir_Un_Fichier_Dans_Explorateur_Fichiers_Window()
Dim CheminEtFichier As String 'Tu définis le chemin et le fichier de ton choix CheminEtFichier = "c:windowsnotepad.exe"
'Pour tester si le fichier existe pour un répertoire 'If If Dir(Chemin, vbDirectory ) <> "" Then If Dir(CheminEtFichier) <> "" Then Shell "C:WINDOWSEXPLORER.EXE /select," & CheminEtFichier, vbNormalFocus Else MsgBox "Le fichier """ & CheminEtFichier & """ est " & _ "introuvable dans le chemin spécifié." End If End Sub '------------------------------------------------------------------------------------
Tu as différentes alternatives pour la ligne de syntaxe selon le résultat que tu veux : (désolé, mais je ne fais pas de traduction. '------------------------------------------------------------------------------------- Syntax EXPLORER.EXE [/n][/e][,/root,<object>] EXPLORER.EXE [/n][/e][,/select,<object>] Command Line Switches /n: Opens a new window in single-paned (My Computer) view for each item selected, even if the new window duplicates a window that is already open. /e: Uses Windows Explorer view (Opens a 2 pane view of the selected folder). /root,<object>: Specifies the root level of the specified view. The default is to use the normal namespace root (the desktop). Whatever is specified is the root for the display. <object> designates the folder path This switch is used with a folder object. It chooses the designated folder as the starting point (root) of the folder tree. (Ordinarily, DESKTOP is the root). /select,<object>: Specifies the folder to receive the initial focus. If "/select" is used, the parent folder is opened and the specified object is selected. Highlights the designated folder and displays the contents of the parent folder in the right pane. <object> designates the folder path '-------------------------------------------------------------------------------------
Bonjour,
Suppose que tu veux voir la location d'un fichier spécifique dans l'explorateur de Windows :
Pour définir cette variable avec le chemin seulement ou un fichier dans un répertoire
particulier... c'est selon ce que tu désires....
CheminEtFichier = "c:windowsnotepad.exe"
OU
CheminEtFichier = "c:UsersTon profilDocuments"
Explorateur Windows va s'ouvrir en sélectionnant soit le fichier ou le répertoire à l'écran.
Exemple :
'------------------------------------------------------------------------------------
Sub Voir_Un_Fichier_Dans_Explorateur_Fichiers_Window()
Dim CheminEtFichier As String
'Tu définis le chemin et le fichier de ton choix
CheminEtFichier = "c:windowsnotepad.exe"
'Pour tester si le fichier existe pour un répertoire
'If If Dir(Chemin, vbDirectory ) <> "" Then
If Dir(CheminEtFichier) <> "" Then
Shell "C:WINDOWSEXPLORER.EXE /select," & CheminEtFichier, vbNormalFocus
Else
MsgBox "Le fichier """ & CheminEtFichier & """ est " & _
"introuvable dans le chemin spécifié."
End If
End Sub
'------------------------------------------------------------------------------------
Tu as différentes alternatives pour la ligne de syntaxe selon le résultat que tu veux :
(désolé, mais je ne fais pas de traduction.
'-------------------------------------------------------------------------------------
Syntax
EXPLORER.EXE [/n][/e][,/root,<object>]
EXPLORER.EXE [/n][/e][,/select,<object>]
Command Line Switches
/n:
Opens a new window in single-paned (My Computer) view for each item selected, even if the new window
duplicates a window that is already open.
/e:
Uses Windows Explorer view (Opens a 2 pane view of the selected folder).
/root,<object>:
Specifies the root level of the specified view.
The default is to use the normal namespace root (the desktop). Whatever is specified is the root for
the display.
<object> designates the folder path
This switch is used with a folder object. It chooses the designated folder as the starting point
(root) of the folder tree. (Ordinarily, DESKTOP is the root).
/select,<object>:
Specifies the folder to receive the initial focus.
If "/select" is used, the parent folder is opened and the specified object is selected. Highlights
the designated folder and displays the contents of the parent folder in the right pane.
<object> designates the folder path
'-------------------------------------------------------------------------------------
Suppose que tu veux voir la location d'un fichier spécifique dans l'explorateur de Windows : Pour définir cette variable avec le chemin seulement ou un fichier dans un répertoire particulier... c'est selon ce que tu désires.... CheminEtFichier = "c:windowsnotepad.exe" OU CheminEtFichier = "c:UsersTon profilDocuments"
Explorateur Windows va s'ouvrir en sélectionnant soit le fichier ou le répertoire à l'écran.
Exemple : '------------------------------------------------------------------------------------ Sub Voir_Un_Fichier_Dans_Explorateur_Fichiers_Window()
Dim CheminEtFichier As String 'Tu définis le chemin et le fichier de ton choix CheminEtFichier = "c:windowsnotepad.exe"
'Pour tester si le fichier existe pour un répertoire 'If If Dir(Chemin, vbDirectory ) <> "" Then If Dir(CheminEtFichier) <> "" Then Shell "C:WINDOWSEXPLORER.EXE /select," & CheminEtFichier, vbNormalFocus Else MsgBox "Le fichier """ & CheminEtFichier & """ est " & _ "introuvable dans le chemin spécifié." End If End Sub '------------------------------------------------------------------------------------
Tu as différentes alternatives pour la ligne de syntaxe selon le résultat que tu veux : (désolé, mais je ne fais pas de traduction. '------------------------------------------------------------------------------------- Syntax EXPLORER.EXE [/n][/e][,/root,<object>] EXPLORER.EXE [/n][/e][,/select,<object>] Command Line Switches /n: Opens a new window in single-paned (My Computer) view for each item selected, even if the new window duplicates a window that is already open. /e: Uses Windows Explorer view (Opens a 2 pane view of the selected folder). /root,<object>: Specifies the root level of the specified view. The default is to use the normal namespace root (the desktop). Whatever is specified is the root for the display. <object> designates the folder path This switch is used with a folder object. It chooses the designated folder as the starting point (root) of the folder tree. (Ordinarily, DESKTOP is the root). /select,<object>: Specifies the folder to receive the initial focus. If "/select" is used, the parent folder is opened and the specified object is selected. Highlights the designated folder and displays the contents of the parent folder in the right pane. <object> designates the folder path '-------------------------------------------------------------------------------------
Nicolas
Merci beaucoup de ta réponse et de ton temps,
cependant, il se peut que je ne connaisse pas le nom exact du fichier ou qu e je souhaite obtenir toutes les possibilités en fonction de certains "mo ts-clés".
J'aurais voulu éviter les "sendkeys" mais pour le moment, cela résout m on problème :
ClipboardDemo ActiveCell.Value Dim chemin: chemin = "C:UsersNicolasDocuments" Shell "explorer .exe " & chemin, vbmaximizedfocus Do Events Application.Wait Now + 2 / 3600 / 24 SendKeys "^f" Application.Wait Now + 1 / 3600 / 24 SendKeys "^v" Application.Wait Now + 1 / 3600 / 24 SendKeys "{NUMLOCK}", True
Encore merci et à bientôt.
Merci beaucoup de ta réponse et de ton temps,
cependant, il se peut que je ne connaisse pas le nom exact du fichier ou qu e je souhaite obtenir toutes les possibilités en fonction de certains "mo ts-clés".
J'aurais voulu éviter les "sendkeys" mais pour le moment, cela résout m on problème :
ClipboardDemo ActiveCell.Value
Dim chemin: chemin = "C:UsersNicolasDocuments"
Shell "explorer .exe " & chemin, vbmaximizedfocus
Do Events
Application.Wait Now + 2 / 3600 / 24
SendKeys "^f"
Application.Wait Now + 1 / 3600 / 24
SendKeys "^v"
Application.Wait Now + 1 / 3600 / 24
SendKeys "{NUMLOCK}", True
cependant, il se peut que je ne connaisse pas le nom exact du fichier ou qu e je souhaite obtenir toutes les possibilités en fonction de certains "mo ts-clés".
J'aurais voulu éviter les "sendkeys" mais pour le moment, cela résout m on problème :
ClipboardDemo ActiveCell.Value Dim chemin: chemin = "C:UsersNicolasDocuments" Shell "explorer .exe " & chemin, vbmaximizedfocus Do Events Application.Wait Now + 2 / 3600 / 24 SendKeys "^f" Application.Wait Now + 1 / 3600 / 24 SendKeys "^v" Application.Wait Now + 1 / 3600 / 24 SendKeys "{NUMLOCK}", True
Encore merci et à bientôt.
MichD
Si tu veux visualiser seulement les fichiers répondant à une restriction dans le nom du fichier, tu peux faire ceci. Mon exemple affiche dans l'explorateur de fichiers Windows seulement les noms des fichiers qui ont la particule "de" comme dans le nom "Calcul de math" qui ont une extension Excel.
Dans la ligne de code de la procédure Test, il s'agit d'adapter cela * de *.xl*" : CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*"
Si dans l'explorateur Windows, tu effectues une sélection multiple de fichiers répondant au critère, la procédure affichera le nom de ces fichiers dans une boîte de message.
'------------------------------------------ Sub test() Dim CheminEtFichier As String, LesFichiers As String
CheminEtFichier = "C:UsersDenisDocuments* de *.xl*"
If Dir(CheminEtFichier) <> "" Then BrowseFile CheminEtFichier, LesFichiers Else MsgBox "Aucun fichier ne correspond à la demande" Exit Sub End If
If LesFichiers <> "" Then MsgBox "Nom des fichiers sélectionnés : " & vbCrLf & _ vbCrLf & LesFichiers Else MsgBox "Aucune sélection a été effectuée." End If End Sub '------------------------------------------ Function BrowseFile(CheminEtTypeFichier, LesFichiers As String) As String With Application.FileDialog(msoFileDialogFilePicker) 'Définit un titre pour la boîte de dialogue .Title = "Choisir le fichier BASE DE DONNÉES EXCEL" 'Empêcher la multi-sélection .AllowMultiSelect = True 'Répertoire par défaut suivi du type de fichier par défaut .InitialFileName = CheminEtTypeFichier 'Efface les filtres existants. .Filters.Clear .InitialView = msoFileDialogViewProperties 'Affiche la boîte de dialogue .Show If .SelectedItems.Count > 0 Then For a = 1 To .SelectedItems.Count LesFichiers = LesFichiers & _ Split(.SelectedItems(a), "")(UBound(Split(.SelectedItems(a), ""))) & vbCrLf Next End If End With End Function '-------------------------------------------
Si tu veux visualiser seulement les fichiers répondant à une restriction
dans le nom du fichier, tu peux faire ceci. Mon exemple affiche dans l'explorateur
de fichiers Windows seulement les noms des fichiers qui ont la particule "de" comme
dans le nom "Calcul de math" qui ont une extension Excel.
Dans la ligne de code de la procédure Test, il s'agit d'adapter cela * de *.xl*" :
CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*"
Si dans l'explorateur Windows, tu effectues une sélection multiple de fichiers
répondant au critère, la procédure affichera le nom de ces fichiers dans une boîte
de message.
'------------------------------------------
Sub test()
Dim CheminEtFichier As String, LesFichiers As String
CheminEtFichier = "C:UsersDenisDocuments* de *.xl*"
If Dir(CheminEtFichier) <> "" Then
BrowseFile CheminEtFichier, LesFichiers
Else
MsgBox "Aucun fichier ne correspond à la demande"
Exit Sub
End If
If LesFichiers <> "" Then
MsgBox "Nom des fichiers sélectionnés : " & vbCrLf & _
vbCrLf & LesFichiers
Else
MsgBox "Aucune sélection a été effectuée."
End If
End Sub
'------------------------------------------
Function BrowseFile(CheminEtTypeFichier, LesFichiers As String) As String
With Application.FileDialog(msoFileDialogFilePicker)
'Définit un titre pour la boîte de dialogue
.Title = "Choisir le fichier BASE DE DONNÉES EXCEL"
'Empêcher la multi-sélection
.AllowMultiSelect = True
'Répertoire par défaut suivi du type de fichier par défaut
.InitialFileName = CheminEtTypeFichier
'Efface les filtres existants.
.Filters.Clear
.InitialView = msoFileDialogViewProperties
'Affiche la boîte de dialogue
.Show
If .SelectedItems.Count > 0 Then
For a = 1 To .SelectedItems.Count
LesFichiers = LesFichiers & _
Split(.SelectedItems(a), "")(UBound(Split(.SelectedItems(a), ""))) & vbCrLf
Next
End If
End With
End Function
'-------------------------------------------
Si tu veux visualiser seulement les fichiers répondant à une restriction dans le nom du fichier, tu peux faire ceci. Mon exemple affiche dans l'explorateur de fichiers Windows seulement les noms des fichiers qui ont la particule "de" comme dans le nom "Calcul de math" qui ont une extension Excel.
Dans la ligne de code de la procédure Test, il s'agit d'adapter cela * de *.xl*" : CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*"
Si dans l'explorateur Windows, tu effectues une sélection multiple de fichiers répondant au critère, la procédure affichera le nom de ces fichiers dans une boîte de message.
'------------------------------------------ Sub test() Dim CheminEtFichier As String, LesFichiers As String
CheminEtFichier = "C:UsersDenisDocuments* de *.xl*"
If Dir(CheminEtFichier) <> "" Then BrowseFile CheminEtFichier, LesFichiers Else MsgBox "Aucun fichier ne correspond à la demande" Exit Sub End If
If LesFichiers <> "" Then MsgBox "Nom des fichiers sélectionnés : " & vbCrLf & _ vbCrLf & LesFichiers Else MsgBox "Aucune sélection a été effectuée." End If End Sub '------------------------------------------ Function BrowseFile(CheminEtTypeFichier, LesFichiers As String) As String With Application.FileDialog(msoFileDialogFilePicker) 'Définit un titre pour la boîte de dialogue .Title = "Choisir le fichier BASE DE DONNÉES EXCEL" 'Empêcher la multi-sélection .AllowMultiSelect = True 'Répertoire par défaut suivi du type de fichier par défaut .InitialFileName = CheminEtTypeFichier 'Efface les filtres existants. .Filters.Clear .InitialView = msoFileDialogViewProperties 'Affiche la boîte de dialogue .Show If .SelectedItems.Count > 0 Then For a = 1 To .SelectedItems.Count LesFichiers = LesFichiers & _ Split(.SelectedItems(a), "")(UBound(Split(.SelectedItems(a), ""))) & vbCrLf Next End If End With End Function '-------------------------------------------
Nicolas
Merci encore pour ton aide,
Cela marche très bien et va me servir beaucoup, mais ... ¿ est-il possi ble de rechercher également dans les sous-dossiers ?
Si je comprends bien, la procédure n'effectue la recherche que dans : CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*" et non dans CheminEtFichier = "C:UsersTon profilDocumentsDossier1* de *.xl*" (pa r exemple)
A bientôt,
Nicolas
Merci encore pour ton aide,
Cela marche très bien et va me servir beaucoup, mais ... ¿ est-il possi ble de rechercher également dans les sous-dossiers ?
Si je comprends bien, la procédure n'effectue la recherche que dans :
CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*" et non dans
CheminEtFichier = "C:UsersTon profilDocumentsDossier1* de *.xl*" (pa r exemple)
Cela marche très bien et va me servir beaucoup, mais ... ¿ est-il possi ble de rechercher également dans les sous-dossiers ?
Si je comprends bien, la procédure n'effectue la recherche que dans : CheminEtFichier = "C:UsersTon profilDocuments* de *.xl*" et non dans CheminEtFichier = "C:UsersTon profilDocumentsDossier1* de *.xl*" (pa r exemple)
A bientôt,
Nicolas
MichD
Cela dépend ce que tu désires...
Si tu veux afficher l'explorateur de fichiers avec seulement un type de fichier particulier, l'explorateur ne peut pas afficher le contenu des fichiers de plus d'un répertoire à la fois.
Si tu désires obtenir la liste des fichiers qui répondent à un critère de recherche, mais sans les afficher dans l'explorateur de fichiers, c'est possible... tu peux copier le résultat dans une feuille de calcul.
Que veux-tu?
Cela dépend ce que tu désires...
Si tu veux afficher l'explorateur de fichiers avec seulement un type de fichier particulier,
l'explorateur ne peut pas afficher le contenu des fichiers de plus d'un répertoire à la fois.
Si tu désires obtenir la liste des fichiers qui répondent à un critère de recherche, mais sans
les afficher dans l'explorateur de fichiers, c'est possible... tu peux copier le résultat dans
une feuille de calcul.
Si tu veux afficher l'explorateur de fichiers avec seulement un type de fichier particulier, l'explorateur ne peut pas afficher le contenu des fichiers de plus d'un répertoire à la fois.
Si tu désires obtenir la liste des fichiers qui répondent à un critère de recherche, mais sans les afficher dans l'explorateur de fichiers, c'est possible... tu peux copier le résultat dans une feuille de calcul.
Que veux-tu?
Nicolas
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire : xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher : - dans les différents sous-dossiers possibles, - avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est poss ible ... merci encore pour ta patience.
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire :
xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher :
- dans les différents sous-dossiers possibles,
- avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est poss ible ... merci encore pour ta patience.
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire : xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher : - dans les différents sous-dossiers possibles, - avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est poss ible ... merci encore pour ta patience.
Dans la première fenêtre, tu entres le chemin du répertoire qui t'intéresse Exemple : C:UsersTon ProfilDocuments
Dans la seconde fenêtre, le classeur que tu recherches Exemple du nom de classeur avec l'expression au moins classeur dans le nom *classeur*.*
Regarde dans le module1 tu peux activer une ligne de code qui va t'afficher dans le résultat tous les répertoires qui ont été scannés même si aucun fichier recherché n'a été trouvé.
"Nicolas" a écrit dans le message de groupe de discussion :
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire : xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher : - dans les différents sous-dossiers possibles, - avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est possible ... merci encore pour ta patience.
Regarde le fichier joint : http://www.cjoint.com/c/EIpmpwwyMRG
Un clic sur le bouton...
Dans la première fenêtre, tu entres le chemin du répertoire qui t'intéresse
Exemple : C:UsersTon ProfilDocuments
Dans la seconde fenêtre, le classeur que tu recherches
Exemple du nom de classeur avec l'expression au moins classeur dans le nom
*classeur*.*
Regarde dans le module1 tu peux activer une ligne de code qui va t'afficher dans le résultat
tous les répertoires qui ont été scannés même si aucun fichier recherché n'a été trouvé.
"Nicolas" a écrit dans le message de groupe de discussion :
bca46c72-45ae-45c8-852d-4782acc96550@googlegroups.com...
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire :
xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher :
- dans les différents sous-dossiers possibles,
- avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est possible ... merci encore
pour ta patience.
Dans la première fenêtre, tu entres le chemin du répertoire qui t'intéresse Exemple : C:UsersTon ProfilDocuments
Dans la seconde fenêtre, le classeur que tu recherches Exemple du nom de classeur avec l'expression au moins classeur dans le nom *classeur*.*
Regarde dans le module1 tu peux activer une ligne de code qui va t'afficher dans le résultat tous les répertoires qui ont été scannés même si aucun fichier recherché n'a été trouvé.
"Nicolas" a écrit dans le message de groupe de discussion :
Lorsque tu mentionnes "un type de fichier particulier" tus veux dire : xls, doc, pdf... ?
Si c'est le cas, il n'est pas nécessaire de distinguer.
Par contre, j'aurais souvent besoin de pouvoir rechercher : - dans les différents sous-dossiers possibles, - avec plusieurs critères : "*calcul*" & "*math*" (par exemple).
L'affichage sur l'explorateur n'est pas "indispensable", mais si c'est possible ... merci encore pour ta patience.
Nicolas
C'est très rapide !
Je vais voir tout ça un peu plus en détail et je te commente mes doutes ...
Merci beaucoup !
À bientôt.
C'est très rapide !
Je vais voir tout ça un peu plus en détail et je te commente mes doutes ...