[VBA/EXCEL] Cellule et nom de Fichier.

Fermé
Killik5 - 27 juil. 2007 à 12:01
 BaidaM8oR - 27 juil. 2007 à 14:59
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 !
A voir également:

1 réponse

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