Enregistrer-Sous sous condition ?

anna111

XLDnaute Junior
bonjour à tous,
j'ai la macro suivante :
Sub CopieFeuille3()
Dim Chemin As String, Nom As String
Chemin = ThisWorkbook.Path
Nom = ActiveSheet.Range("F16").Text
ActiveSheet.Select
ActiveSheet.Copy
ActiveSheet.Name = "Fa" & (Nom)
ActiveWorkbook.SaveAs Filename:=Chemin & "\" & "Fa" & (Nom) & ".xls"
End Sub

qui me permet d'enregistrer rien que la feuille dans un nouveau classeur renommé automatiquement.
maintenant j'aimerai n'enregistrer qu'une zone de la feuille (de C3:F3 à C20:F20) et masquer le reste .
Est ce que c'est possible ?
 

tototiti2008

XLDnaute Barbatruc
Re : Enregistrer-Sous sous condition ?

Bonjour anna111,

peut-être :

Code:
Sub CopieFeuille3()
Dim Chemin As String, Nom As String, Wkb1 as workbook, Wkb2 as workbook
Chemin = ThisWorkbook.Path
Nom = ActiveSheet.Range("F16").Text
set wkb1 = activeworkbook
set Wkb2 = workbooks.add
wkb1.ActiveSheet.range("C3:F20").copy wkb2.activesheet.range("A1")
application.cutcopymode = false
wkb2.ActiveSheet.Name = "Fa" & (Nom)
wkb2.SaveAs Filename:=Chemin & "\" & "Fa" & (Nom) & ".xls"
End Sub
 

anna111

XLDnaute Junior
Re : Enregistrer-Sous sous condition ?

malheureusement, il y a des bugs dans ce code :
-le nouveau classeur contient en plus de la feuille voulue, 2 autres feuuilles (c'est pas si grave)
-le redimentionnement des colonnes n'est pas pris en compte
-le résultat de F23 qui a pour valeur =D23*E23 est masqué ####
-la zone impression n'est pas prise en compte
c'est tout ce que j'ai remarqué jusqu'à present


Bonjour anna111,

peut-être :

Code:
Sub CopieFeuille3()
Dim Chemin As String, Nom As String, Wkb1 as workbook, Wkb2 as workbook
Chemin = ThisWorkbook.Path
Nom = ActiveSheet.Range("F16").Text
set wkb1 = activeworkbook
set Wkb2 = workbooks.add
wkb1.ActiveSheet.range("C3:F20").copy wkb2.activesheet.range("A1")
application.cutcopymode = false
wkb2.ActiveSheet.Name = "Fa" & (Nom)
wkb2.SaveAs Filename:=Chemin & "\" & "Fa" & (Nom) & ".xls"
End Sub
 

tototiti2008

XLDnaute Barbatruc
Re : Enregistrer-Sous sous condition ?

Re,

ce ne sont pas des bugs, ça ne faisait pas partie de la demande, simplement...

peut-être comme ça :

Code:
Sub CopieFeuille3()
Dim Chemin As String, Nom As String
Chemin = ThisWorkbook.Path
Nom = ActiveSheet.Range("F16").Text
ActiveSheet.Select
ActiveSheet.Copy
ActiveSheet.Name = "Fa" & (Nom)
    Application.Union(ActiveSheet.Range("A1:IV2"), ActiveSheet.Range("A1:B65536"), ActiveSheet.Range("G1:IV65536"), ActiveSheet.Range("A21:IV65536")).Clear
ActiveWorkbook.SaveAs Filename:=Chemin & "\" & "Fa" & (Nom) & ".xls"
End Sub
 

anna111

XLDnaute Junior
Re : Enregistrer-Sous sous condition ?

Hola je suis perdue

stp explique moi "Application.Union(ActiveSheet.Range("A1:IV2"), ActiveSheet.Range("A1:B65536"), ActiveSheet.Range("G1:IV65536"), ActiveSheet.Range("A21:IV65536")).Clear"
si je ne veux copier que de C1 à AJ100 que devrais je changer ?

Re,

ce ne sont pas des bugs, ça ne faisait pas partie de la demande, simplement...

peut-être comme ça :

Code:
Sub CopieFeuille3()
Dim Chemin As String, Nom As String
Chemin = ThisWorkbook.Path
Nom = ActiveSheet.Range("F16").Text
ActiveSheet.Select
ActiveSheet.Copy
ActiveSheet.Name = "Fa" & (Nom)
    Application.Union(ActiveSheet.Range("A1:IV2"), ActiveSheet.Range("A1:B65536"), ActiveSheet.Range("G1:IV65536"), ActiveSheet.Range("A21:IV65536")).Clear
ActiveWorkbook.SaveAs Filename:=Chemin & "\" & "Fa" & (Nom) & ".xls"
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 502
Messages
2 089 024
Membres
104 007
dernier inscrit
Monvieux