XL 2013 copier et coller les valeurs

olive323

XLDnaute Occasionnel
Bonjour à tous,

Ci dessous un code qui me permet de copier coller d'un fichier à un autre. je voudrais coller seulement les valeurs et formats, mais pas les formules.
Impossible de trouver.
Auriez vous une idée?
VB:
Sub maj1()
 
Const fichier As String = "Planning prod CZ.xlsm"
Dim wbkSource As Workbook
Dim wbkDestination As Workbook
Dim classeur As Workbook
Set classeur = Application.Workbooks.Open("H:\Logistique\Planning\Planning Prod CZ\Planning prod CZ.xlsm", , local:=True)
 
 Set wbkSource = Workbooks(fichier)
 Set shtSource = wbkSource.Worksheets("C7")

If Not miseablanc Then
            Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1:az500").ClearContents
            miseablanc = True
      End If
  
Workbooks(fichier).Sheets("C7").Range("A1:az500").Copy = Destination: Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range ("A1:az500")
 
Workbooks(fichier).Close False

    Sheets("Synthèse").Select
      
End Sub
 

Dudu2

XLDnaute Accro
Bonjour,
Je pense qu'après le .Copy il faut ajouter
Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1:az500").SpecialCells(xlCellTypeFormulas).ClearContents

Sauf si tu veux conserver les valeurs résultant des formules, dans ce cas, c'est le .Copy qu'il faut modifier
Workbooks(fichier).Sheets("C7").Range("A1:az500").Copy
Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1:az500").PasteSpecial xlPasteValues
Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1:az500").PasteSpecial xlPasteFormats
Application.CutCopyMode = False
 
Dernière édition:

Jacky67

XLDnaute Accro
Bonjour à tous,

Ci dessous un code qui me permet de copier coller d'un fichier à un autre. je voudrais coller seulement les valeurs et formats, mais pas les formules.
Impossible de trouver.
Auriez vous une idée?
VB:
Sub maj1()

Const fichier As String = "Planning prod CZ.xlsm"
Dim wbkSource As Workbook
Dim wbkDestination As Workbook
Dim classeur As Workbook
Set classeur = Application.Workbooks.Open("H:\Logistique\Planning\Planning Prod CZ\Planning prod CZ.xlsm", , local:=True)

Set wbkSource = Workbooks(fichier)
Set shtSource = wbkSource.Worksheets("C7")

If Not miseablanc Then
            Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1:az500").ClearContents
            miseablanc = True
      End If

Workbooks(fichier).Sheets("C7").Range("A1:az500").Copy = Destination: Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range ("A1:az500")

Workbooks(fichier).Close False

    Sheets("Synthèse").Select
    
End Sub
Bonjour à tous

Cette partie du code
VB:
'------------
'------------
Workbooks(fichier).Sheets("C7").Range("A1:az500").Copy
Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
'--------------
'----------
**Non testé
 

Dudu2

XLDnaute Accro
Bonjour Jacky67,
Le xlPasteValuesAndNumberFormats va copier les valeurs et le format de la donnée mais pas le format utilisé dans la cellule (couleurs, gras, etc...)
Le xlPasteFormats va tout copier, le format de la donnée et le format utilisé dans la cellule (couleurs, gras, etc...).
A choisir selon ce que olive323 veut faire.
 

olive323

XLDnaute Occasionnel
Bonjour à tous

Cette partie du code
VB:
'------------
'------------
Workbooks(fichier).Sheets("C7").Range("A1:az500").Copy
Workbooks("Extraction planning prod.xlsm").Sheets("C8").Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats
'--------------
'----------
**Non testé
Bonjour Jacky

Merci beaucoup

Je confirme ça fonctionne

bonne journée
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas