[VBA/EXCEL] Cellule et nom de Fichier.

Killik5 -  
 BaidaM8oR -
Tout d'abord bonjour à tous !

Je tiens à préciser que je débute entièrement sur VBA ! Pardonnez moi si le sujet à déja été abordé... J'ai trouvé deuxd trois solutions qui auraient pu correspondre à mon problème mais aucune ne convenait vraiment ! J'ai cherché par moi même, sur les forums etc... Mais bon :)

J'aurai donc besoin de vos lumières pour m'éclairer un peu !

En gros...

J'ai un fichier que l'on va appeller "Formulaire" Dans lequel l'utilisateur peut changer le mois et l'année pour acceder/créer un fichier dans un répertoire !

Il y à deux choses que j'aimerai pouvoir faire !

- J'ai déja réussi à faire en sorte que quand l'utilisateur appuie sur le bouton ok du formulaire, il ouvre un classeur planning et qu'il l'enregistre sous un nom de fichier que j'ai précisé !

Maintenant je voudrai que, lors de l'enregistrement, le document planning s'enregistre sous un nom définit par les cellules D4 et D7 du classeur formulaire ! C'est possible ? Une idée de code ?

- Deuxième chose : J'aimerai également pouvoir vérifier avant l'enregistrement si le nom de fichier existe déja ou non ( toujours à partir des cellules D4 et D7 du classeur formulaire ) ! Ainsi si il existe, il ouvrira directement le document concernée et, si il n'existe pas, il enregistrera le document selon le principe énoncé plus haut !

Voili Voilou ! En esperant ne pas trop vous embeter ! Bonne journée à tous et en gros gros merci d'avance !

PS : N'hésitez pas à me dire si je n'ai pas été assez clair !
Configuration: Windows XP
Internet Explorer 6.0

1 réponse

  1. BaidaM8oR
     
    Bonjour,

    Pour ton enregistrement, c'est simple...

    Mais tout d'abord à quoi correspond D4 et D7, faut que tu sois un peu plus précis !

    Premierement :
    Si par exemple D4 = Le nom que tu veux sauver et D7 = L'endroit a sauver.

    Alors tu peux simplement faire ceci :

    NomFichier = Sheets("NOM_DE_TA_FEUILLE").cells(D,4).Value
    URL =  Sheets("NOM_DE_TA_FEUILLE").cells(D,7).Value


    Secondement :

    URL =  Sheets("NOM_DE_TA_FEUILLE").cells(D,7).Value
    NomFichier = Sheets("NOM_DE_TA_FEUILLE").cells(D,4).Value


    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objDossier = objFSO.GetFolder(URL)
    
    'Verifie si il y a un fichier dedans
     If (objDossier.Files.count > 1) Then
    'Parcourt tous les fichier
         For Each objFichier In objDossier.Files
    
            If (InStr(1, objFichier.Name, ".xls", 1) > 0) Then
                nom = objFichier.Name
                 if(nom = nomFichier)then
                     'Ce fichier est deja présent
                              Workbooks.Open Filename:=URL + NomFichier
                else
                    'Tu crees ton fichier
                end if
            End if
         Next
       Else
        MsgBox ("No File in this Directory : " + repertoire)
       End If


    Bon je t ai pondu, qq chose comme ca vite fait, les mots clés sont bons et la logique y est, t'auras peut etre de problème de syntaxe car j ai pas mis les déclarations de variable ect ...

    Grrrrrh que j aime pas le VBA !
    1