grymloq
Messages postés13Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention 8 février 2008
-
7 févr. 2008 à 15:39
grymloq
Messages postés13Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention 8 février 2008
-
8 févr. 2008 à 08:44
Bonjour,
Je suis sous Microsoft Access 2003, sous Windows XP.
Je souhaiterais que l'utilisateur puisse, suite à un click sur un bouton, choisir un répertoire : c'est pourquoi j'utilise la méthode 'BrowseForFolder'. Le problème est que l'utilisateur n'a accès à certains dossiers qu'à travers des raccourcis, d'où l'uilisation de la constante &H4001& pour les afficher. Mais lorsque l'explorateur de fichier est ouvert et que l'utilisateur clique sur ces raccourcis, rien ne se produit (le raccourci ne s'active pas).
Il y a même un message d'erreur qui s'affiche lorsque l'utilisateur valide avec un de ces raccourcis sélectionné :
Run-time error '-2147024894 (800700002)':
Method 'BrowseForFolder' of object 'IShellDispatch4' failed
Pour info, voici le code que j'utilise :
Private Sub Toggle8_Click()
Dim Adresse As String
Set oShell = CreateObject("Shell.Application")
Set oFolder = oShell.BrowseForFolder(&H0&, "Browse for folder", &H4001&, "")
If oFolder Is Nothing Then
MsgBox "User don't modify", vbCritical
Exit Sub
Else
Set oFolderItem = oFolder.Self
Adresse = oFolderItem.Path
End If
'(...)
End Sub
Si quelqu'un pourrait m'aider, je lui en serait grandement reconnaissant.
Merci.
A voir également:
Errordomain=nscocoaerrordomain&errormessage=impossible de trouver le raccourci spécifié.&errorcode=4
grymloq
Messages postés13Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention 8 février 2008 8 févr. 2008 à 08:44
Bonjour,
un certain kiki29 m' proposé une solution sur un autre site.
En fait, la méthode FileDialog permet beaucoup plus de possibilités ; voici son code :
Dim sChemin As String
sChemin = "D:\Backup\Demos\SysDiff"
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = sChemin & ""
.Title = "Sélectionner un Dossier"
.AllowMultiSelect = False
.InitialView = msoFileDialogViewDetails
.ButtonName = "Sélection Dossier"
.Show
If .SelectedItems.Count > 0 Then
MsgBox .SelectedItems(1)
Else
Exit Sub
End If
End With