Créer un classeur s'il n'existe pas

  • Initiateur de la discussion Initiateur de la discussion sosohac
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

sosohac

XLDnaute Nouveau
Bonjour à tous,
Ca fait longtemps que je cherche sur le forum si quelqu'un a déjà rencontré le même problème que moi, comme je n'ai rien trouvé voici mon problème:

J'essaie de vérifier si un fichier portant un nom bien précis existe dans un répertoire donné. Si il n'existe pas alors je veux le créer. Comme cette requête se fait dans une boucle, j'aimerais qu'Excel n'essaie pas de recréer le fichier qu'il vient de créer. Or, si la première fois il crée mon fichier, à son second passage il veut encore en créé un mais comme il existe déjà il me renvoie une erreur.
En fait je travaille avec des données climatiques qui me sont fournies en .csv et qui correspondent chacun à un mois. Je réussis à ouvrir ces fichiers, à les copier et à les placer dans un nouveau classeur qui correspond à l'année en .xlsm.
Ma boucle est une simple boucle qui va de 1 à 12 pour le nombre de mois. Mon fichier final doit contenir 12 feuilles.
Je dois faire cela sur plusieurs années donc créer plusieurs fichiers .xlsm


Voici un bout de mon code : en pièce jointe dans le fichier Classeur100


En espérant que vous saurez m'aider
 

Pièces jointes

Re : Créer un classeur s'il n'existe pas

Bonjour Sosohac, Bonjour le forum,

Ci dessous, une fonction personnalisée pour tester si ton fichier "C:\Dossier\Fichier.xlsm" existe ou pas. Source VBA Express

Exemple:

Code:
If FileOrDirExists("C:\Dossier\Fichier.xlsm")=True Then
'code si fichier existe
Elseif FileOrDirExists("C:\Dossier\Fichier.xlsm")=False Then
'code si fichier n'existe pas
Endif

Code:
Function FileOrDirExists(PathName As String) As Boolean
     'Macro Purpose: Function returns TRUE if the specified file
     '               or folder exists, false if not.
     'PathName     : Supports Windows mapped drives or UNC
     '             : Supports Macintosh paths
     'File usage   : Provide full file path and extension
     'Folder usage : Provide full folder path
     '               Accepts with/without trailing "\" (Windows)
     '               Accepts with/without trailing ":" (Macintosh)
     
    Dim iTemp As Integer
     
     'Ignore errors to allow for error evaluation
    On Error Resume Next
    iTemp = GetAttr(PathName)
     
     'Check if error exists and set response appropriately
    Select Case Err.Number
    Case Is = 0
        FileOrDirExists = True
    Case Else
        FileOrDirExists = False
    End Select
     
     'Resume error checking
    On Error GoTo 0
End Function

Bonne journée, 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
185
Retour