begin process at 2012 02 14 03:23:48
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Fonction VB Application.GetOpenFilename


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fonction VB Application.GetOpenFilename

vendredi 21 mars 2008 à 09:28:00 | Fonction VB Application.GetOpenFilename

rbonnal

Bonjour,

      J'ai un comportement bizarre sur la fonction Application.GetOpenFilename en mode multiselection de fichier.
      La fonction ouvre bien la boite de dialogue pour une séléction multifichier.
     J'appelle la fonction comme cela :
   
      Chemin = Application.GetOpenFilename(, , , , True)

     L'option multiselect à true est sensé retourner un tableau de string contenant les chemins des fichiers sélectionnés même si un seul est sélectionné ou false si l'utilisateur clique sur cancel.


Hors parfois, la fonction retourne seulement une string contenant le chemin du 1er fichier sélectionné. Ce comportement est aléatoire.


Est-ce que quelqu'un peut m'éclairer ? J'ai chercher sur le forum et sur le net (msd,.) mais je n'ai rien trouvé sur ca.

J'utilise une macro sous Excel 2000.

Merci
vendredi 21 mars 2008 à 09:33:06 | Re : Fonction VB Application.GetOpenFilename

jrivet

Membre Club
Réponse acceptée !
Salut,
Est ce que tu as pu isoler le moment ou cela ne marchait pas
(une suite de manipulations, Une selection de certains fichiers.)

Bref quelque chose qui nous aiderait plus

@+: Ju£i€n
Pensez: Réponse acceptée
vendredi 21 mars 2008 à 09:44:39 | Re : Fonction VB Application.GetOpenFilename

Renfield

Administrateur CodeS-SourceS
Réponse acceptée !
Je ne rencontre pas ce genre de travers...


Sub test()
Dim zResult As Variant
Dim i As Long
    zResult = Application.GetOpenFilename(MultiSelect:=True)
    If VarType(zResult) <> vbBoolean Then
        For i = 1 To UBound(zResult)
            Debug.Print i, zResult(i)
        Next i
    End If
End Sub


si malgré mon code tu continue de recevoir parfois une chaine unique, tu pourras utiliser ce genre de test:

Sub test()
Dim zResult As Variant
Dim i As Long
    zResult = Application.GetOpenFilename(MultiSelect:=True)
    Select Case VarType(zResult)
        Case vbString
            Debug.Print 1, zResult

        Case (vbArray Or vbString)
            For i = 1 To UBound(zResult)
                Debug.Print i, zResult(i)
            Next i
    End Select
End Sub
vendredi 21 mars 2008 à 10:46:54 | Re : Fonction VB Application.GetOpenFilename

rbonnal

Merci de vos réponses.

Je n'ais pas put isoler le moment (je continue à tester). Ce qui est bizarre c'est que le problème apparaît d'un seul coup et qu'il disparaît si je reboute le PC. C'est peut être qu'il faut réinstallé Excel. Pourtant je n'ais jamais eu de problème avec mon excel. Sinon il faut faire avec la méthode de Renfield   qui solutionne astucieusement le plantage. Mais on ne récure ainsi que le premier des chemins.

vendredi 21 mars 2008 à 10:53:23 | Re : Fonction VB Application.GetOpenFilename

Renfield

Administrateur CodeS-SourceS
"Mais on ne récure ainsi que le premier des chemins."

? on récupère ce que renvoie GetOpenFileName...
si on récupère un tableau de Strings, on liste tout
si on récupère un string unique, on l'affiche


vendredi 21 mars 2008 à 11:03:09 | Re : Fonction VB Application.GetOpenFilename

rbonnal

Oui, en effet. Ton code est fonctionne bien.
Je vais m'en servir.
J'aurais juste aimé comprendre pourquoi parfois ca ne renvoi qu'une chaîne a lieu d'un tableau et pourquoi après un reboot on retrouve le comportement normal. Surtout que tout fonctionne bien dans le fichier et que les traitement son basique (traitement de fichiers texte).
En tout cas, merci de ton aide Renfield

.


Cette discussion est classée dans : fonction, vb, application, comportement, getopenfilename


Répondre à ce message

Sujets en rapport avec ce message

fonction lors du chargement d'une application en vb [ par phoberius ] Bonjour,je recherche a mettre un focus lors du chargement de mon application. Je suis débutant. Merci fonction wait en vb.net [ par Aksel06 ] salut a tous je travail sur une application dont son temps d'exécution est long donc je cherche une fonction qui me permet d'affiche 'plaise wait...' utilise une fonction c++ [ par amiro ] j'ai une bibliothéque codé en c.je veux que lorsque je fais un clic sur un bouton dans une application vb je serais capable d'envoyer les résultas de Comment compiler une source depuis une application VB.Net [ par TheIshtar ] Bonjour, Bon voilà, je voudrai créer une application qui peut créer d'autre applications configurées à partir de la première, par exemple : J'ai une donner le focus a une application externe sous vb.net [ par Cube ] Bonjour, je cherche a donner le focus a une application externe par exemple calc.exe depuis une form vb.net Comment puis je faire pour y parvenir. Me Erreur d'execution sous une application sous VB 2008 Express [ par guilleto ] Bonjour à toutes et tous, J'ai écrit une application sous Visual Basic 2008 Express, laquelle appelle une DLL externe en utilisant la commande suivan Fichiers pesant 0 ko après transfert ftp [ par Skanenruf ] Bonjour à tous, Je suis en train de travailler sur une application en VB.NET (le possède Visual Studio 9, VB.NET 2008 Express). Cette application rep chaine de connexion pour mon application vb.net2008 avec bd serveur [ par walidmchara ] Bonjour tout le monde , je serai reconnaissant si quelqu'un peut m'aider à trouver la bonne chaine de connexion pour mon application Windows avec vb.n Utilisr fonction Excel sous VB [ par isfaen ] Bonjour à tous! Je souhaiterai savoir si on peut utiliser les fonctions d'Excel sous VB, dans mon cas il s'agirait dun recherchev! J'ai déjà mis en


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales