XL 2016 Macro excel 2010 vs 2016

hutch57

XLDnaute Junior
Bonjour la communauté,
J'ai un petit souci sur une macro et je sèche, j'ai remplacé mon Excel 2010 par le 2016 et j'ai une macro qui me permet de copier les cellule d'une feuille sur une autre et ensuite lancé l'impression sauf qu'avec Excel 2016 la macro copie ne copie pas les bonne cellule ?? si quelqu'un a une idée.
Par avance merci

Sub Imprime1()
With Sheets("user")
Feuil5.Unprotect: Feuil1.Unprotect "1234"
.Range("B1:B4").Value = Range("B6:B9").Value
.Range("B7:C9").Value = Range("B12:C14").Value
.Range("B6").Value = Range("B11").Value
.Range("C6").Value = Range("C11").Value
.Range("D8").Value = Range("D19").Value
Sheets("user").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Feuil5.Protect: Feuil1.Protect "1234"
End With
End Sub
 

soan

XLDnaute Barbatruc
Inactif
Bonjour hutch57, le fil,

un essai :

VB:
Option Explicit

'c'est inutile de déprotéger/protéger une feuille lue ; seule la
'feuille où on écrit des données doit être déprotégée/protégée !

'comme on écrit sur "user", c'est cette feuille qui doit être
'déprotégée puis protégée.

Sub Imprime1()
  Application.ScreenUpdating = 0: Worksheets("user").Select
  With Feuil5 'feuille lue (remplacer peut-être par Feuil1)
    ActiveSheet.Unprotect 'on déprotège la feuille "user"
    .[B6:B9].Copy [B1]: .[B12:C14].Copy [B7]
    [B6] = .[B11]: [C6] = .[C11]: [D8] = .[D19]
    ActiveSheet.Protect 'on protège la feuille "user"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, _
      Collate:=True, IgnorePrintAreas:=False
  End With
End Sub

soan
 
Dernière édition:

soan

XLDnaute Barbatruc
Inactif
@hutch57

ton fichier en retour. :)

code VBA :

VB:
Option Explicit

'c'est inutile de déprotéger/protéger une feuille lue ; seule la
'feuille où on écrit des données doit être déprotégée/protégée !

'Feuil1 = "Ligne" ; password : "1234" ; inutile de la déprotéger
'car on n'écrit pas dessus (et reprotection inutile)

'comme on écrit sur "user", c'est cette feuille qui doit être
'déprotégée puis protégée ; Feuil5 = "User" (pas de password).

Sub Imprime()
  Application.ScreenUpdating = 0: Worksheets("user").Select
  With Feuil1 'la feuille lue est la feuille "Ligne"
    ActiveSheet.Unprotect 'on déprotège la feuille "user"
    'DATE, OF (OF WIND UP), WUP, COMMANDE
    .[B6:B9].Copy: [B1].PasteSpecial -4163
    [B6] = .[B11] 'Article
    [C6] = .[C11] 'donnée inconnue (à droite de Article)
    [B7] = .[B12] 'Type
    '"Min", "Max", Largeur wup (Min & Max)
    .[B13:C14].Copy: [B8].PasteSpecial -4163
    [D8] = .[D19] 'nombre de Mètres
    Application.CutCopyMode = 0: [A12].Select
    ActiveSheet.Protect 'on protège la feuille "user"
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, _
      Collate:=True, IgnorePrintAreas:=False
  End With
End Sub

soan
 

Pièces jointes

  • test.xlsm
    33.4 KB · Affichages: 2

soan

XLDnaute Barbatruc
Inactif

Discussions similaires

Statistiques des forums

Discussions
299 792
Messages
1 979 144
Membres
206 588
dernier inscrit
VicBlade