case a cocher pour impression

7 réponses
Avatar
Lionel M
bonjour=20

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=3Dfr

voici un fichier pour exemple=20
sur la page principale une colonne nom et une colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont coch=E9es que si je lance une impres=
sion par un bouton non encore present sur la feuille principale que seules =
soient imprim=E9es les pages coch=E9es ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse a=
ide !

Lionel

7 réponses

Avatar
Jacky
Bonjour Lionel M,

Bonne année aussi.

Avec la propriété "LinckCell" de chaque "CheckBox" attribuée à la
cellule qui le contient.

Ton classeur ici
http://www.cjoint.com/c/FAdtUgOXmdh

--
Salutations
JJ

Lionel M a exposé le 03/01/2016 :
bonjour

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=fr

voici un fichier pour exemple sur la page principale une colonne nom et une
colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont cochées que si je lance une
impression par un bouton non encore present sur la feuille principale que
seules soient imprimées les pages cochées ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse
aide !

Lionel
Avatar
MichD
Bonjour,

J'ai tenu pour acquis que tous les contrôles "CheckBox" dans cette feuille
avaient la même fonction, c'est-à-dire d'indiquer si dans la cellule de
gauche, la feuille devait être imprimée.


'------------------------------------------------------------------------
Sub test()
Dim Obj As Object, X(), A As Long, T As Long
Dim V As String

With Worksheets("Feuil1") ' Nom de la feuille à adapter au besoin
T = .OLEObjects.Count
For A = 1 To T
With .Shapes(A).OLEFormat.Object
If TypeName(.Object) = "CheckBox" Then
If .Object.Value = -1 Then
If .TopLeftCell.Offset(, -1).Value <> "" Then
V = .TopLeftCell.Offset(, -1).Value
n = n + 1
ReDim Preserve X(1 To n)
X(n) = V
End If
End If
End If
End With
Next
End With
On Error Resume Next
For A = 1 To UBound(X)
'Après tests, remplace .printPreview par .PrintOut
Worksheets(X(A)).PrintPreview
If Err <> 0 Then
MsgBox "La feuille """ & X(A) & "" & " n'existe pas."
Err = 0
End If
Next
End Sub
'------------------------------------------------------------------------





"Lionel M" a écrit dans le message de groupe de discussion :


bonjour

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=fr

voici un fichier pour exemple
sur la page principale une colonne nom et une colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont cochées que si je lance une impression par un bouton non
encore present sur la feuille principale que seules soient imprimées les pages cochées ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse aide !

Lionel
Avatar
Lionel M
Le dimanche 3 janvier 2016 20:49:03 UTC+1, Jacky a écrit :
Bonjour Lionel M,

Bonne année aussi.

Avec la propriété "LinckCell" de chaque "CheckBox" attribuée à la
cellule qui le contient.

Ton classeur ici
http://www.cjoint.com/c/FAdtUgOXmdh

--
Salutations
JJ

Lionel M a exposé le 03/01/2016 :
> bonjour
>
> Tout d'abord je presente a tous mes voeux de bonheur pour 2016
>
> https://www.transfernow.net/1516b974k3er?lng=fr
>
> voici un fichier pour exemple sur la page principale une colonne nom et une
> colonne de case a cocher
>
> et autant de pages que de nom dans la feuille principale.
>
> Il faudrait que lorsque les cases sont cochées que si je lance une
> impression par un bouton non encore present sur la feuille principale q ue
> seules soient imprimées les pages cochées ...
>
> J'espere votre aide ! merci a tous pour votre patience et votre precieu se
> aide !
>
> Lionel



Bonjour, Petit probleme je ne peux ouvrir les fichiers xlsm
je ne peux donc rien dire ....
Avatar
Lionel M
Le dimanche 3 janvier 2016 21:30:42 UTC+1, MichD a écrit :
Bonjour,

J'ai tenu pour acquis que tous les contrôles "CheckBox" dans cette feui lle
avaient la même fonction, c'est-à-dire d'indiquer si dans la cellule de
gauche, la feuille devait être imprimée.


'------------------------------------------------------------------------
Sub test()
Dim Obj As Object, X(), A As Long, T As Long
Dim V As String

With Worksheets("Feuil1") ' Nom de la feuille à adapter au besoin
T = .OLEObjects.Count
For A = 1 To T
With .Shapes(A).OLEFormat.Object
If TypeName(.Object) = "CheckBox" Then
If .Object.Value = -1 Then
If .TopLeftCell.Offset(, -1).Value <> "" Then
V = .TopLeftCell.Offset(, -1).Value
n = n + 1
ReDim Preserve X(1 To n)
X(n) = V
End If
End If
End If
End With
Next
End With
On Error Resume Next
For A = 1 To UBound(X)
'Après tests, remplace .printPreview par .PrintOut
Worksheets(X(A)).PrintPreview
If Err <> 0 Then
MsgBox "La feuille """ & X(A) & "" & " n'existe pas."
Err = 0
End If
Next
End Sub
'------------------------------------------------------------------------





"Lionel M" a écrit dans le message de groupe de discussion :


bonjour

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=fr

voici un fichier pour exemple
sur la page principale une colonne nom et une colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont cochées que si je lance une impr ession par un bouton non
encore present sur la feuille principale que seules soient imprimées le s pages cochées ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse aide !

Lionel



bonjour,
Un message "l'indice n'appartient pas a la selection" apparait a l'exeution de la macro ....

???
Avatar
MichD
Le 09/01/16 06:46, Lionel M a écrit :
Le dimanche 3 janvier 2016 21:30:42 UTC+1, MichD a écrit :
Bonjour,

J'ai tenu pour acquis que tous les contrôles "CheckBox" dans cette feuille
avaient la même fonction, c'est-à-dire d'indiquer si dans la cellule de
gauche, la feuille devait être imprimée.


'------------------------------------------------------------------------
Sub test()
Dim Obj As Object, X(), A As Long, T As Long
Dim V As String

With Worksheets("Feuil1") ' Nom de la feuille à adapter au besoin
T = .OLEObjects.Count
For A = 1 To T
With .Shapes(A).OLEFormat.Object
If TypeName(.Object) = "CheckBox" Then
If .Object.Value = -1 Then
If .TopLeftCell.Offset(, -1).Value <> "" Then
V = .TopLeftCell.Offset(, -1).Value
n = n + 1
ReDim Preserve X(1 To n)
X(n) = V
End If
End If
End If
End With
Next
End With
On Error Resume Next
For A = 1 To UBound(X)
'Après tests, remplace .printPreview par .PrintOut
Worksheets(X(A)).PrintPreview
If Err <> 0 Then
MsgBox "La feuille """ & X(A) & "" & " n'existe pas."
Err = 0
End If
Next
End Sub
'------------------------------------------------------------------------





"Lionel M" a écrit dans le message de groupe de discussion :


bonjour

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=fr

voici un fichier pour exemple
sur la page principale une colonne nom et une colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont cochées que si je lance une impression par un bouton non
encore present sur la feuille principale que seules soient imprimées les pages cochées ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse aide !

Lionel



bonjour,
Un message "l'indice n'appartient pas a la selection" apparait a l'exeution de la macro ....

???





Sans rien voir, c'est un peu difficile...
Es-tu certain que chaque contrôle "checkbox" de la feuille ne dépassent
pas les limites (bornes) de la cellule dans lequel il se retrouve?

Cette ligne de commande "V = .TopLeftCell.Offset(, -1).Value" fait
référence à la cellule juste à gauche de la cellule dans lequel le
contrôle se trouve. Si le contrôle empiète sur la cellule à ses côtés,
la valeur retournée n'est pas la bonne... Et comme cette valeur est le
nom de la feuille où le Checkbox est coché, dans la boucle du bas, dans
cette ligne de code : Worksheets(X(A)).PrintPreview
Le tableau X(a) retourne une valeur qui n'existe pas comme nom d'onglet
dans ton classeur.

Aussi, assure-toi que l'orthographe des noms des onglets des feuilles
est bonne.

Si tu n'y arrives pas, publie ton classeur en utilisant le site
Cjoint.com et retourne-nous l'adresse ici.
Avatar
Lionel M
Le samedi 9 janvier 2016 16:37:20 UTC+1, MichD a écrit :
Le 09/01/16 06:46, Lionel M a écrit :
> Le dimanche 3 janvier 2016 21:30:42 UTC+1, MichD a écrit :
>> Bonjour,
>>
>> J'ai tenu pour acquis que tous les contrôles "CheckBox" dans cette f euille
>> avaient la même fonction, c'est-à-dire d'indiquer si dans la cellu le de
>> gauche, la feuille devait être imprimée.
>>
>>
>> '--------------------------------------------------------------------- ---
>> Sub test()
>> Dim Obj As Object, X(), A As Long, T As Long
>> Dim V As String
>>
>> With Worksheets("Feuil1") ' Nom de la feuille à adapter au besoin
>> T = .OLEObjects.Count
>> For A = 1 To T
>> With .Shapes(A).OLEFormat.Object
>> If TypeName(.Object) = "CheckBox" Then
>> If .Object.Value = -1 Then
>> If .TopLeftCell.Offset(, -1).Value <> "" Then
>> V = .TopLeftCell.Offset(, -1).Value
>> n = n + 1
>> ReDim Preserve X(1 To n)
>> X(n) = V
>> End If
>> End If
>> End If
>> End With
>> Next
>> End With
>> On Error Resume Next
>> For A = 1 To UBound(X)
>> 'Après tests, remplace .printPreview par .PrintOut
>> Worksheets(X(A)).PrintPreview
>> If Err <> 0 Then
>> MsgBox "La feuille """ & X(A) & "" & " n'existe pas."
>> Err = 0
>> End If
>> Next
>> End Sub
>> '--------------------------------------------------------------------- ---
>>
>>
>>
>>
>>
>> "Lionel M" a écrit dans le message de groupe de discussion :
>>
>>
>> bonjour
>>
>> Tout d'abord je presente a tous mes voeux de bonheur pour 2016
>>
>> https://www.transfernow.net/1516b974k3er?lng=fr
>>
>> voici un fichier pour exemple
>> sur la page principale une colonne nom et une colonne de case a cocher
>>
>> et autant de pages que de nom dans la feuille principale.
>>
>> Il faudrait que lorsque les cases sont cochées que si je lance une i mpression par un bouton non
>> encore present sur la feuille principale que seules soient imprimées les pages cochées ...
>>
>> J'espere votre aide ! merci a tous pour votre patience et votre precie use aide !
>>
>> Lionel
>
> bonjour,
> Un message "l'indice n'appartient pas a la selection" apparait a l'exeu tion de la macro ....
>
> ???
>


Sans rien voir, c'est un peu difficile...
Es-tu certain que chaque contrôle "checkbox" de la feuille ne dépasse nt
pas les limites (bornes) de la cellule dans lequel il se retrouve?

Cette ligne de commande "V = .TopLeftCell.Offset(, -1).Value" fait
référence à la cellule juste à gauche de la cellule dans lequel l e
contrôle se trouve. Si le contrôle empiète sur la cellule à ses c ôtés,
la valeur retournée n'est pas la bonne... Et comme cette valeur est le
nom de la feuille où le Checkbox est coché, dans la boucle du bas, da ns
cette ligne de code : Worksheets(X(A)).PrintPreview
Le tableau X(a) retourne une valeur qui n'existe pas comme nom d'onglet
dans ton classeur.

Aussi, assure-toi que l'orthographe des noms des onglets des feuilles
est bonne.

Si tu n'y arrives pas, publie ton classeur en utilisant le site
Cjoint.com et retourne-nous l'adresse ici.



rebonjour

Merci ca fonctionne ! juste un probleme de nom de page ... Merci encore!!
Avatar
Jacky
Re..
Format .xls
http://www.cjoint.com/c/FAjqSPAu2rh
--
Salutations
JJ

Lionel M a exposé le 09/01/2016 :
Le dimanche 3 janvier 2016 20:49:03 UTC+1, Jacky a écrit :
Bonjour Lionel M,

Bonne année aussi.

Avec la propriété "LinckCell" de chaque "CheckBox" attribuée à la cellule
qui le contient.

Ton classeur ici
http://www.cjoint.com/c/FAdtUgOXmdh

--
Salutations
JJ

Lionel M a exposé le 03/01/2016 :
bonjour

Tout d'abord je presente a tous mes voeux de bonheur pour 2016

https://www.transfernow.net/1516b974k3er?lng=fr

voici un fichier pour exemple sur la page principale une colonne nom et
une colonne de case a cocher

et autant de pages que de nom dans la feuille principale.

Il faudrait que lorsque les cases sont cochées que si je lance une
impression par un bouton non encore present sur la feuille principale que
seules soient imprimées les pages cochées ...

J'espere votre aide ! merci a tous pour votre patience et votre precieuse
aide !

Lionel





Bonjour, Petit probleme je ne peux ouvrir les fichiers xlsm
je ne peux donc rien dire ....