Besion de votre aide pour une imprimer un planning

lolo57

XLDnaute Occasionnel
Bonjour a tous

En fichier joint j'ai une image de mon planning
Mais quand je veux imprimer ce n'es pas le top (trop de gaspillage en feuille),j'aurais bien voulais que je puisse sélectionner (le mois - date du/au - et des noms du/ou)

Merci pour votre aide
 

Pièces jointes

  • Planning.xlsx
    24.3 KB · Affichages: 63
  • Planning.xlsx
    24.3 KB · Affichages: 64
  • Planning.xlsx
    24.3 KB · Affichages: 64
Dernière édition:

daniel1949

XLDnaute Occasionnel
Re : Besion de votre aide pour un code

Bonjour lolo57,
Pour quelqu'un inscrit depuis 2005 avec 227 posts ce n'est pas le top :
Je me réveille un peu tard mais c'est en passant par hasard que j'ai été interpellé par le commentaire de job75...
Cher Job avec 301 messages depuis 2005, je ne suis pas mieux que lolo57 et bien loin de vous MEGA Barbatruc car je ne suis qu'à
> 420 000 téléchargements de mes fichiers (une douzaine) sur le site.
Je n'ose pas imaginer tout le parcours que je devrais entreprendre pour arriver à votre niveau !!! Bonne journée à tous
 

Staple1600

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Bonjour à tous


Histoire de saluer job75 et de plussoir à sa remarque ;)

daniel1949:
Je pense que job75 a voulu dire qu'un membre inscrit depuis longtemps (ici 2005) devrait connaitre les us et coutumes du forum (et notamment la charte du forum) et par conséquent joindre d'emblée une pièce jointe et pas une copie d'écran.
Sans oublier qu'il est censé ce membre aguerri savoir rédiger une question avec un titre explicite et des explications détaillant le souci rencontré.

J'espère ainsi avoir lever tout malentendu.
 

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Bonjour à tous, bonjour Jean-Marie, heureux de te croiser :)

Je vois que l'UserForm de notre ami n'attire pas les foules.

Une solution consiste à faire une sélection multiple (touche Ctrl enfoncée) sur les lignes et colonnes à afficher.

En effet Excel n'imprime pas ce qui est masqué.

La macro du bouton Imprimer est assez simple :

Code:
Sub Bouton1_QuandClic()
Dim a As Range
Range("A5", Cells(Rows.Count, 1).End(xlUp).MergeArea).EntireRow.Hidden = True
Columns(4).Resize(, Application.Count(Rows(3))).Hidden = True
For Each a In Selection.Areas
  If a.Rows.Count = Rows.Count Then a.EntireColumn.Hidden = False
  If a.Columns.Count = Columns.Count Then a.EntireRow.Hidden = False
Next
Application.Dialogs(xlDialogPrint).Show
Rows.Hidden = False
Columns.Hidden = False
End Sub
Fichiers joints.

Nota 1 : les lignes 1:4, les colonnes A:C et AI:BE sont toujours affichées/imprimées.

Nota 2 : l'UserForm c'est bien gentil mais il faut contrôler (c'est casse-pied) les données entrées.

A+
 

Pièces jointes

  • Planning(1).xls
    178.5 KB · Affichages: 45
  • Planning(1).xls
    178.5 KB · Affichages: 38
  • Planning(1).xls
    178.5 KB · Affichages: 44
  • Planning(1).xlsm
    59.4 KB · Affichages: 38

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Re,

Un petit + : pour tout imprimer, sélectionner une seule cellule :

Code:
Range("A5", Cells(Rows.Count, 1).End(xlUp).MergeArea).EntireRow.Hidden = Selection.Count > 1
Columns(4).Resize(, Application.Count(Rows(3))).Hidden = Selection.Count > 1
Fichiers (2).

A+
 

Pièces jointes

  • Planning(2).xlsm
    59.4 KB · Affichages: 43
  • Planning(2).xls
    178.5 KB · Affichages: 33
  • Planning(2).xls
    178.5 KB · Affichages: 35
  • Planning(2).xls
    178.5 KB · Affichages: 33

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Re,

Ceci me paraît mieux :

Code:
Sub Bouton1_QuandClic()
Dim a As Range, Rtest As Boolean, Ctest As Boolean
Range("A5", Cells(Rows.Count, 1).End(xlUp).MergeArea).EntireRow.Hidden = True
Columns(4).Resize(, Application.Count(Rows(3))).Hidden = True
For Each a In Selection.Areas
  If a.Columns.Count = Columns.Count Then
    a.EntireRow.Hidden = False
    Rtest = True
  ElseIf a.Rows.Count = Rows.Count Then
    a.EntireColumn.Hidden = False
    Ctest = True
  End If
Next
If Not Rtest Then Rows.Hidden = False
If Not Ctest Then Columns.Hidden = False
Application.Dialogs(xlDialogPrint).Show
Rows.Hidden = False
Columns.Hidden = False
End Sub
Si aucune ligne n'est sélectionnée toutes les lignes sont imprimées.

Si aucune colonne n'est sélectionnée toutes les colonnes sont imprimées.

Fichiers (3).

A+
 

Pièces jointes

  • Planning(3).xls
    178.5 KB · Affichages: 35
  • Planning(3).xls
    178.5 KB · Affichages: 34
  • Planning(3).xls
    178.5 KB · Affichages: 31
  • Planning(3).xlsm
    59.2 KB · Affichages: 34

CISCO

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Bonsoir

Bonjour à tous

Hello

Dans mon fichier je ne peut rien modifier car dans chaque cellules et lignes il y a une formule
si je la modifie plus rien ne marche n'y avant n'y après c pour cela que c mieux de passer par une macro

Les formules que je te propose sont sur la feuille 2, pas sur la feuille 1 (cf. le nom des onglets). Par conséquent, ces nouvelles formules n'écrasent pas les anciennes, et tu peux imprimer uniquement le contenu de la feuille 2 qui t'intéresse.

Bien sûr, avec une macro, cela serait quand même plus pratique.

@ plus
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Bonjour le fil, le forum,

Si les en-têtes des lignes et colonnes sont masquées on peut utiliser :

Code:
Sub Bouton1_QuandClic()
Dim Rplage As Range, Cplage As Range, a As Range
Dim Rtest As Boolean, Ctest As Boolean
Set Rplage = Range("A5:C5", Cells(Rows.Count, 1).End(xlUp).MergeArea)
Set Cplage = [D1:D4].Resize(, Application.Count(Rows(3)))
Rplage.EntireRow.Hidden = True
Cplage.EntireColumn.Hidden = True
Set a = Intersect(Selection, Rplage)
If Not a Is Nothing Then
  Rtest = True
  a.EntireRow.Hidden = False
End If
Set a = Intersect(Selection, Cplage)
If Not a Is Nothing Then
  Ctest = True
  a.EntireColumn.Hidden = False
End If
If Not Rtest Then Rows.Hidden = False
If Not Ctest Then Columns.Hidden = False
Application.Dialogs(xlDialogPrint).Show
Rows.Hidden = False
Columns.Hidden = False
End Sub
Les lignes imprimées sont celles des cellules sélectionnées sur la plage A5:C48.

Les colonnes imprimées sont celles des cellules sélectionnées sur la plage D1:AH4.

Fichiers (4).

A+
 

Pièces jointes

  • Planning(4).xls
    180 KB · Affichages: 36
  • Planning(4).xls
    180 KB · Affichages: 36
  • Planning(4).xls
    180 KB · Affichages: 35
  • Planning(4).xlsm
    59.7 KB · Affichages: 36
Dernière édition:

lolo57

XLDnaute Occasionnel
Re : Besion de votre aide pour une imprimer un planning

Bonsoir a tous

job75 une petite question
J'ai mi le module dans mon planning mais je veux imprimer j'ai pas la mème mise en page que sur l’exemple que tu a donner sur ton précédent message

Merci
 

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

autre question

après la cellule AH sa m'imprime avec pourquoi ?

au post #18 :

Nota 1 : les lignes 1:4, les colonnes A:C et AI:BE sont toujours affichées/imprimées.

Si vous voulez masquer au delà de la colonne AH je vous laisse réfléchir et modifier la macro par vous-même.

A+
 

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Re,

Bon, pour masquer aussi les colonnes AI:BE, remplacez :

1) dans les macros des posts #18-19-20 :

Columns(4).Resize(, Application.Count(Rows(3))) par Columns("D:BE")

2) dans la macro du post #22 :

[D1: D4].Resize(, Application.Count(Rows(3))) par [D1:BE4]

A+
 

job75

XLDnaute Barbatruc
Re : Besion de votre aide pour une imprimer un planning

Bonjour lolo57, le forum,

La macro du post #22 était inutilement compliquée, prenez cette version (5) :

Code:
Sub Bouton1_QuandClic()
Dim Rplage As Range, Cplage As Range, a As Range
Set Rplage = Range("A5:C5", Cells(Rows.Count, 1).End(xlUp).MergeArea)
Set Cplage = [D1:D4].Resize(, Application.Count(Rows(3)))
Set a = Intersect(Selection, Rplage)
If Not a Is Nothing Then
  Rplage.EntireRow.Hidden = True
  a.EntireRow.Hidden = False
End If
Set a = Intersect(Selection, Cplage)
If Not a Is Nothing Then
  Cplage.EntireColumn.Hidden = True
  a.EntireColumn.Hidden = False
End If
Application.Dialogs(xlDialogPrint).Show
Rows.Hidden = False
Columns.Hidden = False
End Sub
A+
 

Pièces jointes

  • Planning(5).xlsm
    59.5 KB · Affichages: 30
  • Planning(5).xls
    176.5 KB · Affichages: 30
  • Planning(5).xls
    176.5 KB · Affichages: 35
  • Planning(5).xls
    176.5 KB · Affichages: 30

Discussions similaires

Réponses
14
Affichages
712
Réponses
13
Affichages
654

Statistiques des forums

Discussions
312 094
Messages
2 085 242
Membres
102 833
dernier inscrit
Hassna