Débutant fonction VBA

jeanjeandada Messages postés 152 Date d'inscription lundi 21 avril 2008 Statut Membre Dernière intervention 20 novembre 2011 - 3 sept. 2009 à 18:21
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 - 4 sept. 2009 à 13:04
Salut,

Voilà j'aurais une petite question de base à vous poser sur le VBA :

J'ais pris sur internet une fonction "FichOuvert" qui me renvoie FAlse ou True. Cette fct je l'appelle dans la procédure essai()

Sub essai()
FichOuvert "monfichier.xls"
If FichOuvert("azerty.xls") = True Then
MsgBox ("le fichier est ouvert")
End If
end sub

Function FichOuvert(F As String) As Boolean
Dim Wk As Workbook
On Error Resume Next
Set Wk = Workbooks(F)
On Error GoTo 0
FichOuvert = Not Wk Is Nothing
End Function


Ma question est donc : Comment fait-on pour connaitre le résultat de la fct ??? j'ai essayé If FichOuvert("azerty.xls") = True mais ca ne doit pas etre la bonne syntaxe.

Merci

2 réponses

cs_Ayr Messages postés 221 Date d'inscription mercredi 9 avril 2003 Statut Membre Dernière intervention 13 décembre 2009 2
3 sept. 2009 à 18:51
Salut,

Oui, c'est la bonne syntaxe. Sauf que dans ta Sub essai,
1ère ligne: FichOuvert "monfichier.xls", est de trop car
quand tu fais le test, If FichOuvert("azerty.xls") = True Then,
la fonction s'execute aussi et ensuite tu en récupère le résultat
pour le comparer avec True.

Pour avoir un résultat True, ton fichier "azerty.xls" doit déjà être ouvert.
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
4 sept. 2009 à 13:04
Bonjour,

En d'autres termes, il faudrait écrire :

Sub essai()
If FichOuvert("azerty.xls") = True Then
MsgBox "le fichier est ouvert"
Else
MsgBox "le fichier n'est pas chargé"
End If
end sub


Amicalement,
Us.
0
Rejoignez-nous