VBA & prise en compte d'1 cellule affichant "Faux", False

Bonjour à tous,

je me démène sans avoir trouvé la réponse sur le forum.

J'ai une macro d'ouverture qui vérifie le chemin d 'accès d'un fichier cible.

Si la cellule contenant le chemin d'accès est vide ("") ou affiche 0, la macro fonctionne bien et ouvre une fenêtre pour sélectionner le fichier.

Mon problème est le suivant: si un utilisateur appui sur "annuler" dans la fenêtre proposant de sélectionner le fichier cible, alors "faux" est inscrit dans la cellule, et j'ai prévu une condition ci-dessous vérifiant que justement si la cellule affiche False la fenêtre de sélection du fichier s'ouvre aussi.

Mais cela ne fonctionne pas... Lorsque la cellule affiche Faux mais que j'ouvre le classeur, rien ne se passe.

Je remercie donc les bonnes âmes qui voudront bien m'éclairer.

A vous lire,

Merci à vous!

Private Sub Workbook_Open()

'Déclaration de variable
Dim PATH As Variant
'Attribution de valeur
PATH = ThisWorkbook.Sheets("SYSTEM").Range("E5").Value

'Vérification de la présence d'un chemin d'accès au fichier de gestion general
If PATH <> False Or PATH <> "" Or PATH <> 0 Then
Exit Sub

Else
MsgBox ("Veuillez sélectionner le fichier GESTION ASSOCIATIVE" & " " & Sheets("Configuration").Range("C2").Value)
'Déverouillage de la feuille
Worksheets("SYSTEM").Unprotect
'Obtention du chemin d'accès à comparer
ThisWorkbook.Sheets("SYSTEM").Range("E5") = Application.GetOpenFilename(, , "Veuillez sélectionner le fichier GESTION ASSOCIATIVE de l'année en cours")
End If

'Verouillage de la feuille
Worksheets("SYSTEM").Protect

'Test de correspondance entre mot de passe et nom de fichier
        If InStr(Range("E5"), "GESTION" & " " & "ASSOCIATIVE" & " " & Sheets("Configuration").Range("C2")) = 0 Then
        MsgBox "Fichier invalide. Veuillez sélectionner un fichier comportant la mention GESTION ASSOCIATIVE" & " " & Sheets("Configuration").Range("C2"), vbCritical
        Exit Sub
        End If
End Sub

Bojour Theophile69,

As-tu essayé de remplacer

If PATH <> False Or PATH <> "" Or PATH <> 0 Then

par

If PATH <> "Faux" Or PATH <> "" Or PATH <> 0 Then

Cordialement,

Bon,

en fait j'ai trouvé: c'était une erreur logique.

Puisque : "Ou PATH<>"" ou PATH<>False then exit sub"

Et bien même quand PATH était False il y a avait l'autre pour sortir de la procédure.

Donc voilou

Merci Xorsankukai,

oui j'avais essayé et ça ne prenais pas tout de même pas en compte la requête.

C'était juste qu'il y avait une porte de sortie à ma condition "False" (à cause de "or ="").

Rechercher des sujets similaires à "vba prise compte affichant faux false"