UserForm, CheckBox et Aperçu avant impression

Jeremy992

XLDnaute Occasionnel
Bonjour le forum !

Je vous expose mon problème :)

J'ai crée un UserForm qui contient:

-5 checkbox qui doivent correspondre a mes 5 onglet
-un bouton "valider" qui doit lancer un aperçu avant impression des onglet selectionné
-un bouton "Annuler" qui quitte le userform (unload me)

Et donc, je n'arrive pas à trouver comment demander a Excel:

"Aperçu avant impression des onglet séléctionné via les checkbox"

Ex: Si checkbox1(=onglet "Bonjour) & checkbox2(=onglet "Au revoir") selectionné alors apperçu avant impression de ces deux onglets.

Auriez-vous des exemple a me fournir? Que je puisse ensuite adapter a mon fichier?
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Je ne comprend pas pourquoi je ne peux plus ajouter de nouveau, ça écrase les donnée au même endroit...

1er "Nouveau" = ok
2e " Nouveau" = écrit sur les cellule du 1er

ça marché bien pourtant avant? Est-ce du au fusion des cellule?
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Haha, je crois avoir trouvé où ça bug, c'est après avoir fusionné les cellules, si on relance "Nouveau" lorsque qu'il faut définir la première ligne vide PLV. Enfin je pense, je tente en ce moment même de comprendre pourquoi
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : UserForm, CheckBox et Aperçu avant impression

Bonjour Jérémy, bonjour le forum,

Dans l'initialisation de l'UserForm remplace :

Code:
PLV = IIf(O.Range("C9").Value = "", 9, O.Range("C8").End(xlDown).Row + 1)
par
Code:
PLV = O.Cells(Application.Rows.Count, 3).End(xlUp).Row + 1
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

C'est fait, ça ne fonctionne toujours pas :/

Je me demande si ce n'est pas plus du coté de:

Code:
O.Range(O.Cells(PLV, 3), O.Cells(PLV, 3).Offset(NCB - 1, 0)).Merge 'fusionne les cellules colonne C
.
.
O.Cells(PLV, 3).Value = Me.TextBox1.Value 'renvoie l'[Affaire]
.
.

For I = 0 To UBound(TCB) 'boucle 1 : sur toutes les checkboxes cochées
    O.Cells(PLV, 8).Offset(I, 0).Value = Me.Controls("CheckBox" & TCB(I)).Caption 'renvoie le responsable cochée
    For L = 1 To 2 'boucle 2 : sur les textboxes des dates [Prévue] et [Réelle] de la checkbox cochée


Car si j'ai bien compris, pour les TextBox on ne ce décale plus comme avant (fonction OffSet):

Code:
O.Cells(PLV, 3).Offset(I, 0).Value = Me.TextBox1.Value 'renvoie l'[Affaire]
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : UserForm, CheckBox et Aperçu avant impression

Bonsoir Jérémy, bonsoir le forum,

Je pense avoir résolu le problème avec :

Code:
Set CD = O.Cells(Application.Rows.Count, 3).End(xlUp) 'définit la cellule de départ CD
'définit la première ligne vide PLV de la colonne 3 (la dernière ligne éditée + le nombre de cellules fusionnées)
PLV = O.Cells(Application.Rows.Count, 3).End(xlUp).Row + CD.MergeArea.Cells.Count
Ensuite, je n'inscris rien dans le tableau tant que toutes les vérifications ne sont pas effectuées (contrôles vides, date erronées, etc.).
Au niveau des formats je te laisse le soin de remettre les mise en formes conditionnelles car je ne sais pas faire...
Les quelques tests que j'ai faits semblent concluant. Fais tourner et dis-moi...
La version 7 :
 

Pièces jointes

  • Jérémy_v07.xlsm
    75.7 KB · Affichages: 38
Dernière édition:

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Je viens de tester rapidement, j'ai fais un peu près toute les possibilités et... Tout marche parfait :)
Je regarde un peu mieux demain matin et je reviens vers toi ! Mais à première vue ça a l'air parfaiiiiit ! Merci Robert !
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Je viens de tester rapidement, j'ai fais un peu près toute les possibilités et... Tout marche parfait :)
Je regarde un peu mieux demain matin et je reviens vers toi ! Mais à première vue ça a l'air parfaiiiiit ! Merci Robert !
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Bonjour le forum, Bonjour Robert,

Alors j'ai pus tester le fichier en long et en large, tout est parfait, à une petite exception, j'ai une inversion du jour et du mois dans la cellule "Détection".
Mais pas systématiquement, par exemple:

26/06/14 = pas de soucis
01/07/14 = 07/01/14

Je dois avouer que ça ma fait un peu rire de voir ça ^^

Sinon tout les reste est génial, c'est un vrai travail de pro ! Je te félicite Robert !

Voila, donc si tu as une petite idée pour cette histoire de date je suis preneur :)
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : UserForm, CheckBox et Aperçu avant impression

Bonjour Jérémy, bonjour le forum,

Ha ces dates, qu'est-ce que je galère avec ! J'utilise un clavier QWERTY USA International configuré en langue portugaise. Je sais, c'est bizarre mais c'est parce que j'ai appris l'informatique au Brésil. Revenu en France j'ai trouvé le clavier français tellement nul (pas d'accent sur les majuscules Á É Í Ó Ú pas de Ç ! Une aberration quand on doit écrire en plusieurs langues), que j'ai gardé la config do Braziou...
Bref, avec cette config, Excel ne casse les bur...es avec les dates ! D'où le code étrange que j'utilise dès que je dois gérer des dates.
Je crois que la solution, en tout cas celle qui marche chez moi, c'est de ne surtout pas formater les cellules qui doivent recevoir des dates. Il faut qu'elles restent au format initial = Standard. C'est malheureusement la seule solution que je te propose. Dis-moi si ça fonctionne chez toi.
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

J'ai essayer, lorsque j'exécute le programme cela remet automatiquement le format de la cellule en date...
Je me demande.. si je déclare "Dim D As String" pour D la date, avec "
Code:
 D= DateSerial(Year(Date), Month(Date), Day(Date))
ça ne corrigerais pas le problème? Car ce ne serais plus en format date?
 

Jeremy992

XLDnaute Occasionnel
Re : UserForm, CheckBox et Aperçu avant impression

Alors la... WAOUH !! A ne rien comprendre !!

Si je fait:
Code:
Me.TextBox3.Value = Format(DateSerial(Year(Date), Month(Date), Day(Date)), "dd/MM/yy")
ça marche pas.

Mais si je fait:
Code:
Me.TextBox3.Value = Format(DateSerial(Year(Date), Month(Date), Day(Date)), "dd/MMM/yy")
ou
Code:
Me.TextBox3.Value = Format(DateSerial(Year(Date), Month(Date), Day(Date)), "dd/MMMM/yyyy")

ça fonctionne mais en m'affichant par exemple 01-juil-14 et 01-juillet-2014, alors la je me dis youpi, un petit CDate et c'est bon !! Mais non trop facile, ça recommence et inverse le jour et le mois !
 
Dernière édition:

Discussions similaires