Copier coller en valeur dans un autre classeur

CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Alors voilà, je veux copier coller une feuille nommée "IENET" d'un classeur dans un nouveau classeur.
Le problème c'est que les valeurs proviennent de formules, il faut donc faire un copier coller en valeur.
Ci-dessous mon code : (en vert c'est ce que j'ai essayé mais ça ne fonctionnait pas et en noir, j'ai trouvé cette solution sur un forum mais ça ne copie pas en valeur donc j'ai des erreurs dans mes données au moment de coller)
Private Sub CommandButton3_Click()
Sheets("IENET").Activate
'ActiveSheet.Cells.Select
'Selection.Copy
'Worksheets.SaveAs Filename:="Fichier importation dans IENET"
'Workbooks("Fichier importation dans IENET.xlsx").Activate
'Range("A1").Select
'Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
'    :=False, Transpose:=False
ThisWorkbook.ActiveSheet.Copy _
Before:=Workbooks.Add.Worksheets(1)
End Sub

Ensuite, j'ai vu qu'il était possible d'ouvrir automatiquement une fenêtre d'enregistrement du nouveau fichier mais je n'arrive également pas à le mettre en place...

Merci de votre aide,

Cédric
A voir également:

3 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

A adapter:

Sub Creer_Classeur_Valeur()
    Application.ScreenUpdating = False    'desactive  rafraichissement Excel
    chemin = ActiveWorkbook.Path & "\"        'chemin du classeur actif
    Worksheets("Bibli.").Range("A1").CurrentRegion.Copy
    With Application
        .Workbooks.Add
    End With
    With ActiveWorkbook
        Worksheets("Feuil1").Select
        Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False
        'enregistrement dans un nouveau classeur
        Application.DisplayAlerts = False   'desactive les alertes Excel
            '.Title = ActiveSheet.Name             'titre  pour propriete/detail du classeur
            '.Subject = ActiveSheet.Name       ' objet pour propriete/detail du classeur
        .SaveAs Filename:=chemin & "Test_A FAIRE.xlsx"          'sauvegarde le nouveau classeur
        .Close True     'ferme le nouveau classeur avec sauvegarde
    End With
    Application.DisplayAlerts = True    'active les alertes Excel
    Application.ScreenUpdating = True    'active rafraichissement Excel
End Sub
0
CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Après adaptation des noms dans le code, en la lançant pour tester, j'ai ces 2 lignes là en erreurs :
        Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False

Si vous avez besoin de mon fichier pour essayer directement, ci-dessous le lien :
https://www.cjoint.com/c/LFolNMcHwrk
(le code est le 3ème dans la feuil3)
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

Excel est un peu capricieux de temps en temps.

Fichier modifie: https://www.cjoint.com/c/LFooyzIidKg
0
CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

En effet, maintenant ça fonctionne ; il y a juste la date qui affiche "44726" au lieu de "14/06/2022"
J'ai changé dans le code :
            .Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False

En ça :
            .Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False

Mais rien ne change alors que lorsque j'enregistre la macro en faisant la manipulation manuellement, c'est le code que j'ai changé qui ressort mais là ça ne fonctionne pas (voir le fichier ci-dessous)
https://www.cjoint.com/c/LFpgG6i7djk
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Pouvez mettre le fichier xlsm ald xlsx
0
CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Ci-joint le fichier :
https://www.cjoint.com/c/LFphGU8Fvtk
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Fichier modifie pour format Date: https://www.cjoint.com/c/LFpiCMaWA2g
1
CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Merci c'est nickel comme ça
Auriez vous une astuce pour régler la taille d'écriture du Userform2 car là c'est en tout petit alors que j'ai changé sa dimensions avec ça :
UserForm1.Height = 435
UserForm1.Width = 300
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > CedricG62 Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Re,

Vous pouvez regler la taille ecriture dans les proprietes des objets
Pourquoi avoir fait une Userform si petite?
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713 > f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention  
 
Suite:

Fichier avec UF modifiees: https://www.cjoint.com/c/LFpqnkzdWdg
0