Macro enrgistrer sous excel

Résolu
Bonjour,

j'ai un fichier excel avec en feuille2

case A1 une année
case A2 un code adhérent

et je souhaiterais à partir d'une macro pouvoir l'enregistrer dans un dossier étant le code adhérent et le nom du fichier serait le code adhérent + l'année
en espérant avoir été claire
en cas de questionnement n'hésiter pas je reste à votre disposition.

5 réponses

  1. Salut,

    Si j'ai bien saisi, ce code doit répondre à tes attentes :

    Sub ecriture_dans_txt()
    Dim Fichier, CheminFichier As String
    
    Fichier = Cells(1, 2) & "-" & Cells(1, 1)
    MkDir ("c:\" & Cells(1, 2) & "\")
    CheminFichier = "c:\" & Cells(1, 2) & "\" & Fichier & ".txt"
    
        fnum = FreeFile()
        Open CheminFichier For Append As fnum
        Print #fnum, "Si tu veux écrire quelque chose dans ton fichier, c'est ici"
        Close #fnum
    End Sub


    Il créé un fichier dont le nom est en A2 et A1, le place dans un répertoire nommé par la cellule A2.

    Chez moi ce code fonctionne, n'hésite pas à faire un retour si ce n'est pas le cas chez toi !

    A+
    1. en fait g réussi à le faire!!! il faut mettre cela

      Sub sauve()
      Dim chemin As String
      chemin = "C:\Dossiers Clients\"
      ActiveWorkbook.SaveAs Filename:=chemin & Worksheets("Sommaire").[A2] & "\" & [A1] & [A2] & ".xls"
      End Sub

      merci de ta réponse mais je l'ai vu après avoir réussi celle ci
      je ne doute pas du bon fonctionnement de ton code
      encore merci
      1. Ca roule !
        N'oublie pas de mettre le sujet en Résolu :)
      2. petite question est ce que ton code cré également le dossier?
      3. Oui il le créé
        C'est la ligne
        MkDir ("c:\" & Cells(1, 2) & "\")
      4. petit problème ça ne marche pas sur mon PC peut etre par ce que je suis sur office 2003
    2. Moi aussi je suis sous 2003...

      Quelle est l'erreur ?
      1. ça ne crée pas le fichier et le dossier je sais pas pourquoi
      2. en faite il faut que je le garde en version excel et pas en texte
    3. C'est peut-être de ma faute, je crois avoir utilisé
      case A1 une année
      case B1 un code adhérent
      Au lieu de A1 et A2

      Dans le code, il faudrait changer toutes les
      Cells (1,2)
      par
      Cells (2,1)
      1. en faite il faut que je le garde en version excel et pas en texte alors qu'ici tu me le met en fichier texte
      2. pb résolu j'ai combiné nos deux codes par contre il faudrait faire en sorte que si le dossier existe il n'essaie pas de le créer
    4. Pour qu'il n'essaie pas de le créer s'il existe déjà, et qu'il utilise l'existant si existant il y a, il faudrait tester le contenu de ton répertoire final (la ou il y a le dossier nommé avec le code adhérent :
      repertoire = "C:\"
      nf = Dir(repertoire & "*.*")   ' premier fichier
      Do While nf <> ""
      If nf = cells(2,1) Then
      exit sub
      End If
      
      'Ici toute la macro
      
      nf = Dir                         ' fichier suivant
      Loop