begin process at 2010 02 10 08:52:00
  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

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 fonction équivalente à ADRESSE (excel) en VB6? [ par mossoux ] ne trouvant pas la fonction équivalente "ADRESSE" en VB, je calcule l'adresse de la cellule recherchée dans la feuille de calcul "feuil2", par ex en " application web asp.net en vb [ par heromm ] salut, tout le monde j'aimerai bien que vous m'aidez.J'ai un projet de fin d'étude, j'ai choisi comme théme dossier médical par intranet, je dois util setup pour application vb.net 2005 [ par Chronolode ] celui qui n'avance pas recule Appel du swf dans VB 2005 vers mauvais répoertoire [ par danbo ] Dans le cadre d'un exercice peofessionnel où je souhaite relier des anmations Flash à une base de données en passant par VB, pour paramétrer des varia Probleme ouverture fichier excel en VB [ par thuglife6938 ] Bonjour, Voici le code que j'ai ajouter à mon programme en vb: 'Déclaration des variables Dim appExcel As Excel.Application 'Application Excel Dim wbE vb et access [ par layendoye ] Bonjour...j suis debutant en VB.et j utilise le VB 6.0...j suis entrai de faire une petite application....et j ai une base access..et j arrive a affic Limiter le nombre d'execution d'une application en VB 6 [ par amarmtl ] Salut !Comment limiter le nombre ou la durée d'execution d'une application en vb 6 ?Merci de lire et de répondre à mon message. Comment tracer un cylindre sur une application faite sur VB? [ par papse ] Bonjour à tousJ'ai un mini projet qui consiste à developper une application sur VB qui permet de tracer des figures géometriques 3D (ex : cylindre, cô


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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,374 sec (3)

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