Bloc If non reconnu

Dim.Reichart

XLDnaute Occasionnel
Bonsoir, ou re,
J'ai (encore) un petit souci avec ma macro.
Le but est de vérifier si un sous-dossier existe, et si non, de le créer.
VB:
Option Explicit
Sub test()

Dim d As String
d = ThisWorkbook.Path & "\" & Range("a1")

    If Len(Dir(d & "\" & Range("m6"), vbDirectory)) Then MkDir (d)
    End If
   
End Sub
Le débogueur donne une erreur "end if sans bloc if", pourtant, le bloc if est reconnu et mis en couleur.
Afin de m'assurer de la syntaxe des sous fonctions, je les ai testé indépendamment.
Len(Dir()) remonte bien une donnée 0 ou 1 selon que le fichier existe ou pas et MKdir() crée correctement le dossier.
L'aide sur la fonction ne m'apporte pas de précision, j'ai aussi essayé d'ajouter un else, mais dans ce cas, j'obtiens l'erreur "else sans bloc if".
J'utilise If ailleurs, et à priori, je n'ai pas ce problème (bien qu'il puisse apparaitre plus tard).
Si vous avez une explication, ça m'interesse.
Merci d'avance.
 
Dernière édition:

D.D.

XLDnaute Impliqué
Bonjour,

Dans ce genre de cas, en ce qui me concerne, je fais un
VB:
On error resume next
MkDir (d)
On error goto 0

C'est à dire que je ne m'occupe même pas de savoir s'il existe déjà: je le crée et s'il existe déjà le on error resume next evite l'erreur.
 

Discussions similaires

Réponses
1
Affichages
269
Compte Supprimé 979
C