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 Barbatruc
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 Barbatruc
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 Barbatruc
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.
 

Discussions similaires

Statistiques des forums

Discussions
312 112
Messages
2 085 409
Membres
102 884
dernier inscrit
Macarena