[VBA Excel] FileDialog non reconnu

Le
mic-mic
Bonjour,

Je tourne avec Office 2000 et j'utilisais un fichier excel avec macros créé
sous excel 2003. Seulement depuis 15 jours, j'ai le message d'erreur suivant
à l' exécution d'une macro:
" Erreur de compilation:
Type défini par l'utilisateur non défini " sur la ligne Dim fd As
FileDialog.

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)

Dim vrtSelectedItem As Variant

With fd
.AllowMultiSelect = False
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
If vrtSelectedItem <> "" Then
GoTo suite
End If
Next vrtSelectedItem
Else
End If
End With

Je sais qu'il existe des problèmes de compatibilités entre les différentes
version d'excel, mais bon jusque là le code s' exécutait bien.
FileDialog étant absent de la bibliothèque de VBA, que dois-je coché dans
les références disponibles, voir rajouter pour que cela fonctionne de
nouveau.

Merci de votre aide
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #4354441
Remplace par ceci :

'-------------------------------
Sub OuvertureFichiersMultiples()

Dim a As Variant, Nom As String

Application.ScreenUpdating = False
Nom = ActiveWorkbook.Name
ChDrive "c:" ' Choix du lecteur
ChDir "c:Denis" 'Choix du répertoire
a = Application.GetOpenFileName("fichier excel (*.xls), *.xls", _
, "Sélection de vos fichiers excel", , True)

Select Case TypeName(a)
Case Is = "Boolean"
Exit Sub
Case Else
For b = LBound(a) To UBound(a)
Workbooks.Open a(b)
Next
End Select
Workbooks(Nom).Activate

End Sub
'-------------------------------



"mic-mic"
Bonjour,

Je tourne avec Office 2000 et j'utilisais un fichier excel avec macros créé
sous excel 2003. Seulement depuis 15 jours, j'ai le message d'erreur suivant
à l' exécution d'une macro:
" Erreur de compilation:
Type défini par l'utilisateur non défini " sur la ligne Dim fd As
FileDialog.

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)

Dim vrtSelectedItem As Variant

With fd
.AllowMultiSelect = False
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
If vrtSelectedItem <> "" Then
GoTo suite
End If
Next vrtSelectedItem
Else
End If
End With

Je sais qu'il existe des problèmes de compatibilités entre les différentes
version d'excel, mais bon jusque là le code s' exécutait bien.
FileDialog étant absent de la bibliothèque de VBA, que dois-je coché dans
les références disponibles, voir rajouter pour que cela fonctionne de
nouveau.

Merci de votre aide
mic-mic
Le #4354391
Mon but n'est pas de réécrire le code puisque je suis le seul à utiliser
excel 2000, tous les autres utilisant ce fichier travaillent avec excel
2003.
Ce qui tient du miracle, c'est que le code ait pu fonctionner sous excel
2000 sans qu'il n'y ait aucune référence à FileDialog dans la bibliothèque
et aujourd'hui, il vient de s'apercevoir que l'objet n'était pas référencé
!!!

Et en installant la bibliothèque Microsoft Office 11.0 Object Library,
est-ce que ça changerait quelque chose ?

"MichDenis"
Remplace par ceci :

'-------------------------------
Sub OuvertureFichiersMultiples()

Dim a As Variant, Nom As String

Application.ScreenUpdating = False
Nom = ActiveWorkbook.Name
ChDrive "c:" ' Choix du lecteur
ChDir "c:Denis" 'Choix du répertoire
a = Application.GetOpenFileName("fichier excel (*.xls), *.xls", _
, "Sélection de vos fichiers excel", , True)

Select Case TypeName(a)
Case Is = "Boolean"
Exit Sub
Case Else
For b = LBound(a) To UBound(a)
Workbooks.Open a(b)
Next
End Select
Workbooks(Nom).Activate

End Sub
'-------------------------------



"mic-mic"
Bonjour,

Je tourne avec Office 2000 et j'utilisais un fichier excel avec macros
créé

sous excel 2003. Seulement depuis 15 jours, j'ai le message d'erreur
suivant

à l' exécution d'une macro:
" Erreur de compilation:
Type défini par l'utilisateur non défini " sur la ligne Dim fd As
FileDialog.

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)

Dim vrtSelectedItem As Variant

With fd
.AllowMultiSelect = False
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
If vrtSelectedItem <> "" Then
GoTo suite
End If
Next vrtSelectedItem
Else
End If
End With

Je sais qu'il existe des problèmes de compatibilités entre les différentes
version d'excel, mais bon jusque là le code s' exécutait bien.
FileDialog étant absent de la bibliothèque de VBA, que dois-je coché dans
les références disponibles, voir rajouter pour que cela fonctionne de
nouveau.

Merci de votre aide






MichDenis
Le #4354331
FileDialog n'est pas disponible sous Excel 2000.

FileDialog est dans la bibliothèque Excel ... tu n'as
pas besoin d'ajouter une bibiothèque particulière sous
excel 2002 et 2003.





"mic-mic"
Mon but n'est pas de réécrire le code puisque je suis le seul à utiliser
excel 2000, tous les autres utilisant ce fichier travaillent avec excel
2003.
Ce qui tient du miracle, c'est que le code ait pu fonctionner sous excel
2000 sans qu'il n'y ait aucune référence à FileDialog dans la bibliothèque
et aujourd'hui, il vient de s'apercevoir que l'objet n'était pas référencé
!!!

Et en installant la bibliothèque Microsoft Office 11.0 Object Library,
est-ce que ça changerait quelque chose ?

"MichDenis"
Remplace par ceci :

'-------------------------------
Sub OuvertureFichiersMultiples()

Dim a As Variant, Nom As String

Application.ScreenUpdating = False
Nom = ActiveWorkbook.Name
ChDrive "c:" ' Choix du lecteur
ChDir "c:Denis" 'Choix du répertoire
a = Application.GetOpenFileName("fichier excel (*.xls), *.xls", _
, "Sélection de vos fichiers excel", , True)

Select Case TypeName(a)
Case Is = "Boolean"
Exit Sub
Case Else
For b = LBound(a) To UBound(a)
Workbooks.Open a(b)
Next
End Select
Workbooks(Nom).Activate

End Sub
'-------------------------------



"mic-mic"
Bonjour,

Je tourne avec Office 2000 et j'utilisais un fichier excel avec macros
créé

sous excel 2003. Seulement depuis 15 jours, j'ai le message d'erreur
suivant

à l' exécution d'une macro:
" Erreur de compilation:
Type défini par l'utilisateur non défini " sur la ligne Dim fd As
FileDialog.

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)

Dim vrtSelectedItem As Variant

With fd
.AllowMultiSelect = False
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
If vrtSelectedItem <> "" Then
GoTo suite
End If
Next vrtSelectedItem
Else
End If
End With

Je sais qu'il existe des problèmes de compatibilités entre les différentes
version d'excel, mais bon jusque là le code s' exécutait bien.
FileDialog étant absent de la bibliothèque de VBA, que dois-je coché dans
les références disponibles, voir rajouter pour que cela fonctionne de
nouveau.

Merci de votre aide






mic-mic
Le #4354111
Comment refaire fonctionner ce satané code sous excel 2000 car je le
rappelle la macro avec FileDialog fonctionnait.....

"MichDenis" #
FileDialog n'est pas disponible sous Excel 2000.

FileDialog est dans la bibliothèque Excel ... tu n'as
pas besoin d'ajouter une bibiothèque particulière sous
excel 2002 et 2003.





"mic-mic"
Mon but n'est pas de réécrire le code puisque je suis le seul à utiliser
excel 2000, tous les autres utilisant ce fichier travaillent avec excel
2003.
Ce qui tient du miracle, c'est que le code ait pu fonctionner sous excel
2000 sans qu'il n'y ait aucune référence à FileDialog dans la bibliothèque
et aujourd'hui, il vient de s'apercevoir que l'objet n'était pas référencé
!!!

Et en installant la bibliothèque Microsoft Office 11.0 Object Library,
est-ce que ça changerait quelque chose ?

"MichDenis"
Remplace par ceci :

'-------------------------------
Sub OuvertureFichiersMultiples()

Dim a As Variant, Nom As String

Application.ScreenUpdating = False
Nom = ActiveWorkbook.Name
ChDrive "c:" ' Choix du lecteur
ChDir "c:Denis" 'Choix du répertoire
a = Application.GetOpenFileName("fichier excel (*.xls), *.xls", _
, "Sélection de vos fichiers excel", , True)

Select Case TypeName(a)
Case Is = "Boolean"
Exit Sub
Case Else
For b = LBound(a) To UBound(a)
Workbooks.Open a(b)
Next
End Select
Workbooks(Nom).Activate

End Sub
'-------------------------------



"mic-mic"
Bonjour,

Je tourne avec Office 2000 et j'utilisais un fichier excel avec macros
créé

sous excel 2003. Seulement depuis 15 jours, j'ai le message d'erreur
suivant

à l' exécution d'une macro:
" Erreur de compilation:
Type défini par l'utilisateur non défini " sur la ligne Dim fd As
FileDialog.

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)

Dim vrtSelectedItem As Variant

With fd
.AllowMultiSelect = False
If .Show = -1 Then
For Each vrtSelectedItem In .SelectedItems
If vrtSelectedItem <> "" Then
GoTo suite
End If
Next vrtSelectedItem
Else
End If
End With

Je sais qu'il existe des problèmes de compatibilités entre les
différentes


version d'excel, mais bon jusque là le code s' exécutait bien.
FileDialog étant absent de la bibliothèque de VBA, que dois-je coché
dans


les références disponibles, voir rajouter pour que cela fonctionne de
nouveau.

Merci de votre aide












Publicité
Poster une réponse
Anonyme