Definir une zone d'impression avec plusieurs variables (lignes)

Fermé
hello_dit Messages postés 2 Date d'inscription jeudi 31 janvier 2013 Statut Membre Dernière intervention 5 février 2013 - 31 janv. 2013 à 18:51
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 5 févr. 2013 à 11:38
J'aurais un conseil concernant un soucis auquel je n'ai pu trouver une réponse sur les différents forums.

J'ai un tableau dont je connais la largeur.
par contre a l'intérieur de ce tableau , un utilisateur peut me donner un N° début de ligne et fin de ligne différents a chaque fois.

Je m'explique mon tableau ressemble a ceci

A B C
1 Debut Fin
2 11/03/2013 8.00 15.00
3 12/03/2013 8.00 16.00
4 13/03/2013 8.00 15.00
5 14/03/2013 9.00 15.00
6 15/03/2013 8.00 15.00


L'utilisateur peut choisir comme une zone d'impression (a1: c3) ou (a5:c6)

j'ai essayé d'utilisé un userforme pour que l'utilisateur rentre la ligne de début et fin et que cela me facilite la vie mais je n'arrive a rien car je n'arrive pas a rentrer mes variables avec la macro printArea

Auriez vous des idées ?
Ps je ne peux prédefinir non plus une plage à l'avance pour faciliter la chose.

merci

Elodie
A voir également:

5 réponses

f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 709
1 févr. 2013 à 14:51
Bonjour,

par contre a l'intérieur de ce tableau , un utilisateur peut me donner un N° début de ligne et fin de ligne différents a chaque fois. Cet utilisateur voit le Tableau?? si oui, pourquoi ne definit-il pas lui meme l'impression de ce qu'il a besoin??

A+
0
par contre a l'intérieur de ce tableau , un utilisateur peut me donner un N° début de ligne et fin de ligne différents a chaque fois. Cet utilisateur voit le Tableau?? si oui, pourquoi ne definit-il pas lui meme l'impression de ce qu'il a besoin??

A+

Bonjour F894009,


Car les utilisateurs ne maitrisent pas bien excel et donc je voudrais contrôler ce point.

Merci
0
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 1 709
1 févr. 2013 à 15:02
Re,

essayez ceci:

Sub test()

On Error Resume Next
Set RangeCells = Application.InputBox(Prompt:="Veuillez selectionner une plage de cellule. ", _
Title:="Blabla : " & Titre, _
Default:=DefaultRange, _
Type:=8)

ActiveSheet.PageSetup.PrintArea = RangeCells.Address

End Sub

c'est une boite a dialogue pour saisie plage de cellules que vous selectionnez a la souris ou en ecrivant dans la boite ex: a1:c18 et le code vous cree la zone d'impression.

A+
0
hello_dit Messages postés 2 Date d'inscription jeudi 31 janvier 2013 Statut Membre Dernière intervention 5 février 2013
5 févr. 2013 à 11:11
Merci de votre aide et d'y avoir passer un peu de temps , je vais essayer.
Bonne journée
Elodie
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 5/02/2013 à 11:39
bonjour,

Puisque tu te sert d' un userform, Pourquoi ne pas utiliser tout simplement le contrôle Refedit ?

Private Sub RefEdit1_BeforeDragOver(Cancel As Boolean, ByVal Data As MSForms.DataObject, ByVal x As stdole.OLE_XPOS_CONTAINER, ByVal y As stdole.OLE_YPOS_CONTAINER, ByVal DragState As MSForms.fmDragState, Effect As MSForms.fmDropEffect, ByVal Shift As Integer) 
End Sub 

Private Sub CommandButton1_Click() 
Range(RefEdit1).PrintOut 
End Sub 
 


Michel
0