Macro et copier coller

S

SATANAS

Guest
Bonjour,

J'ai crée un classeur avec plusieurs macros sur des boutons...
Ce classeur s'appel Satanas.xls
Et je voudrais le recopier en Satanas1.xls, Satanas2.xls...etc...

y a t'il un moyen pour que j'évite a chaque copier coller de réaffecter a chaque fois les macros ?

Merci
 

JYLL

Nous a quitté
Repose en paix
Bonjour Erics, Satanas, le forum,

Tu peux créer un fichier pointeur et un bouton qui te feras l'enregistrement et indrémentera le fichier pointeur. J'ai réalisé cela pour une facturation et je te joins le code, les chemins seront à modifier c'est juste pour le principe. Tu crées un fichier .TXT avec Wordpad et tu le nomme pointeur avec un comme txte. Ce fichier sera incrémenté par la macro.

Code:
Sub Lecture_Pointeur()
Dim Année As String

Année = Year(Date) & ' / '
On Error GoTo GestErreur
    Open 'C:\\Factures\\Pointeur.dat' For Input As #1
    
        Input #1, Pointeur
        Close #1
        Sheets('Facture').Select
        Cells(12, 8).Value = Année & CStr(Pointeur)
        Exit Sub
GestErreur:
        MsgBox 'La variable n'est pas renseignée ou le fichier n'existe pas.', 64, 'informations'
        Close #1
End Sub
Sub Ecriture_Pointeur()
'
  On Error GoTo GestErreur
  Open 'C:\\Factures\\Pointeur.dat' For Output As #1
   
       Print #1, (Pointeur + 1)
        Close #1
        Call Lecture_Pointeur
        Exit Sub
GestErreur:
        MsgBox 'Ecriture non effectuée', 64, 'informations'
        Close #1
End Sub
Sub Enregistrement_Facture()
'
    Dim Nom_Fichier As String
    Dim Année As String
    Dim Répertoire As String
    Année = Year(Date)
 
    If Flag_Ecrit Then
        Répertoire = 'C:\\Factures\\' & CStr(Année) & '\\'     'Constitution du chemin avec l'année en cours
        Nom_Fichier$ = 'Facture_' & CStr(Pointeur) & '_' & Année$   ' Constitution du nom de fichier
            ActiveSheet.SaveAs FileName:=Répertoire & Nom_Fichier$ & '.xls' ' Enregistrement du nom de fichier
            Call Ecriture_Pointeur
            Call Effacement
            Call Efface_Paiement
    End If
End Sub

Bon test et à plus pour d'autre renseignements si besoin.

Amicalement.

Jean-Yves
 
T

Temjeh

Guest
Bonjour à tous ici et ailleur

J'ai un classeur(1) qui fait une liste de tout tes classeur dans son directory. Ouvre chaque classeur un à la suite et copie les données dans le nouveau. Ferme le classeur de la liste et enregistre classeur(1) sous le nom de du premier et refait la même chose pour le 2ème. Si tu le veut donne moi juste le model de ta feuil pour voir le nom des feuil et des plage à copiées dans le nouveau avec les nouvelles macro.

A++

Temjeh
 

Discussions similaires

Réponses
12
Affichages
282

Statistiques des forums

Discussions
312 485
Messages
2 088 810
Membres
103 971
dernier inscrit
abdazee