Décalage checkbox (printout avec macro)

mickysor -  
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

il y a des macros qui me font tourner en bourrique.....

je précise toutes ces macros fonctionnaient parfaitement sur office 2003.
je précise aussi dans format de controle j'ai coché cette option: ne pas déplacer ou redimmentionner avec les cellules
maintenant que je suis sur office 2010, lorsque je lance les macros d'impression
a partir d'un autre tableau
en utilisant un code comme ceci:
Application.Run "'BV CHILLY-MAZARIN.xlsm'!print"

et dans cette macro il y a:
With Worksheets("bv recto")

.OLEObjects("checkbox4").Activate
.OLEObjects("checkbox4").Object.Value = True
.OLEObjects("checkbox4").PrintObject = True
.OLEObjects("checkbox6").Activate
.OLEObjects("checkbox6").Object.Value = True
.OLEObjects("checkbox6").PrintObject = True
End With

Dim strValidationRange As String
Dim rngValidation As Range
Dim rngDepartment As Range


Application.ScreenUpdating = True




Range("k:k").Select
Set rngValidation = Range("d71").End(xlDown).Offset(0, 9)
With Range("A350.").Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=" & rngValidation.Address
' Set the value in the selection cell to each selection in turn
' and print the results.
For Each rngDepartment In rngValidation.Cells
Range("A350.").Value = rngDepartment.Value
Range("A2:H66").Select
Selection.PrintOut
Next
Range("A12:H15").Select
Application.ScreenUpdating = True
End With

With Worksheets("bv recto")

.OLEObjects("checkbox4").Object.Value = False

.OLEObjects("checkbox6").Object.Value = False

End With
______________________________________________________

je ne comprends pas à chaque fois les checkbox se déplacent!!
A voir également:

3 réponses

lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Bonjour,
Effectivement ça ne fonctionne plus de la même façon...
essaye,
With ActiveSheet.CheckBox1
.Value = False
.PrintObject = False
.Placement = xlFreeFloating 'fixe =3
.Placement = xlMove 'libre =2
End With
A adapter à ton contexte bien évidemment
A+
0
mickysor
 
Bonjour,

quel est le bon code?

.Placement = xlFreeFloating 'fixe =3

ou ce code?

.Placement = xlMove 'libre =2

je ne comprends pas.j'ai essayé le
xlFreeFloating et le xlMove

et rien à faire les checkbox se déplacent.
j'ai l'impression que ça se produit avec ce code:
Application.Run "'BV CHILLY-MAZARIN.xlsm'!print"
l'écran bouge et les checkbox se déplacent
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
D'après ce que tu dis, le nom de la macro est "Print", Print est un nom réservé, essaye en changeant le nom de la macro.
0