VBA : Retourner si un fichier est vide ou non

Zirael

Habitué
Bonjour,

Je suis actuellement en train de faire une maintenance sur une macro excel non opérationnel et je suis chargé de la faire marcher. Suite au débuggage que j'ai effectué ( j'explique vite fait le fonctionnement de la macro ):
Il ouvre un fichier .fdf ( fichier spool dont on ne doit pas manipuler les données en dur ), copie le contenu dans un fichier .txt ( sorte de fichier temporaire que l'on supprimme a la fin de son utilisation ) puis l'on sélectionne tout le contenu ( le fichier txt s'ouvre avec excel ) et l'on doit le coller dans un onglet spécifique et alors viens la fameuse erreur 1004 me disant ' Impossible de coller les informations car les zones Copier et collage sont de forme et de tailles différentes. ) Et cette erreur n'interviens que lorsque les .fdf et .txt evidemment , sont vides. Donc j'aurais souhaité savoir si il y avait une méthode pour renvoyer par exemple avec un boolean si un fichier est vide ou non.

Cordialement
GAUTHIER Grégory
 

Zirael

Habitué
Trouvé , un petit exemple :

Code:
res = FileLen(Nom_fichier)
if res=0 then
      msgbox("fichier vide")
else
      msgbox("fichier pas vide")
End if

Edit : code corrigé ^^
 

zeb

Modérateur
Merci d'avoir pris la peine de donner la soluce. :merci:
Merci de prendre la peine de lire le règlement et de l'appliquer. J'ai dû mettre les balises
Code:
à ta place :fou:
 

zeb

Modérateur
Arghhh !!!!!

Mais c'est n'importe quoi, ça, mon cher zirael.
Ce n'est pas la fonction Len(string) qu'il faut utiliser, mais la fonction FileLen(pathname).
 

Zirael

Habitué
Erf pas la premiere fois que tu me fais la remarque en plus il me semble , mais j'ai trouvé cette soluce apres quelque recherches désespéré ( pas habitué à posté du code ^^ dsl pour les balises une fois de plus ) et apperement pour une macro excel , ceci à l'air de marché , ce qui m'étonne vu que je voyais cette fonction comme une fonction retournant le nombre de carateres du string passé en parametres.

Edit : .... En fait j'ai dit idiotie sur idiotie , dans mon code j'ai bien mis filelen(path) , j'ai fait un amalgame avec len(string) que j'ai utilisé peu après pour des comparaisons ^^" ..... je corrige le code du premier post de suite
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 132
Messages
6 718 000
Membres
1 586 387
Dernier membre
ouistititouille
Partager cette page
Haut