macro comptage "mois"

yoyo77

XLDnaute Occasionnel
Bonsoir à tous :),

J'ai un petit soucis avec mon fichier de stats, dans mon fichier des personnes devrons remplir via un Userform des chiffres et ca chaque jour.
J'ai fait des tableaux mensuels pour des stats mais j'aimerais que dans l'userform dans 'monthview' si on choisi en date le mois d'avril le report se face en Feuil "Avril" et ainsi de suite mais je n'y arrive pas :(

je suis Débutant ;) mais je suis quand même comptant du peu que j'ai fait (merci à xhudi69;)) même si je ne comprend pas tout, le rendu me plait :p

Pouvez vous m'aider SVP :D:confused::confused:

Ci-dessous le lien car le fichier est trop lourd ? bizarre !

stats V1.xlsm - Fichier XLS

Merci :cool:
 

fanfan38

XLDnaute Barbatruc
Re : macro comptage "mois"

Bonjour
Dans la macro de validation
Private Sub CommandButton3_Click() 'valider
mois = Month(TextBox1.Value)
et dans la macro du calendrier
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
TextBox1.Value = MonthView1.Value
' If Not Moncontrol Is Nothing Then
' Moncontrol.Text = MonthView1.Value
' TextBox1.Value = MonthView1.Value
' End If
End Sub
Par contre c'est quoi moncontrol.text dans cette même macro??
A+ François
 

yoyo77

XLDnaute Occasionnel
Re : macro comptage "mois"

Bonsoir fanfan38,

Je te remercie pour ton aide je regarderai ca demain,
pour moncontrol.text aucune idée j'ai simplement recopié une macro d'un autre fichier mes compétence en la matière son trop limitée pour l'instant :)

Merci encore

Bonne soirée
 

xhudi69

XLDnaute Accro
Re : macro comptage "mois"

Bonsoir yoyo77, le Forum
Salut fanfan38 :)

En PJ ton fichier remanié.

Les mois dans les onglets ne doivent pas avoir de majuscules, puis dans ta macro si tu commences par
Code:
With Sheets(Mois)
Il faut que tu mettes un "." devant "Range" comme ceci
Code:
.Range("A" & NV).Value = CDate(TextBox1.Value)

@+ :cool:
 

Pièces jointes

  • yoyo_stats-v1.zip
    503.8 KB · Affichages: 70

yoyo77

XLDnaute Occasionnel
Re : macro comptage "mois"

fanfan38:), xhudi69 :):cool::cool:,
Le Forum :),



xhudi69, je suis heureux de te revoir :D j'ai pensé à toi au commencement du projet puisque je me suis inspiré de ton aide enfin le mot est faible :eek:

Alors merci tu as répondu a mes interrogation car j'ai retourné la macro dans tous les sens,

T’as vu cette fois j'ai essayé de gérer tout seul, j'y étais presque !! Mais bon il me reste beaucoup à apprendre,
, j'avais mis une fois les points devant Range mais ca n'avais pas marché:(:( en tous cas merci encore ainsi qu'a fanfan38;) pour sa contribution.


A bientôt, bonne soirée,

:cool::cool::cool:

Yoyo77
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : macro comptage "mois"

Bonsoir à tous

Cette base de travail est un bon sujet, je me suis permis de reprendre un peu ton fichier xhudi69, en effet ici sur un PC en local setting UK, le MonthName ne peut pas fonctionner sur des Feuilles dont le nom de mois est en Français. C'est clair que c'est lourd de faire un Select Case pour ceci, mais au moins Yoyo n'aura pas de souci si il le fait tourner sur un PC autre que FR.

J'en ai profité pour épurer aussi pas mal de trucs qui trainaient depuis d'autres versions je suppose.

J'ai aussi ajouté quelques contrôles ou conditions, c'est un peu plus stable. J'ai aussi remis de l'ordre dans la Tabulation pour les TextBox, et j'ai expliqué comment utiliser le "Tag" dans la boucle qui trainait et qui me remémore un Fil avec notre cher Ti.

PS pour mon ami Robert j'ai remis au format XLS :)

Bonne Soirée
@+Thierry
 

Pièces jointes

  • yoyo_stats-v2_Review_Thierry.zip
    669.6 KB · Affichages: 84

xhudi69

XLDnaute Accro
Re : macro comptage "mois"

Bonsoir _Thierry :)
Bonsoir ROBERT :)

@Thierry: merci d'avoir remanié la macro dans ce sens, j'apprends tous les jours avec vous :cool:

@ROBERT: c'est en partie grace (ou à cause) de toi si je peux progresser chaque jour et pondre mes propres macros.

Merci encore à vous tous. :eek:
 

yoyo77

XLDnaute Occasionnel
Re : macro comptage "mois"

xhudi69 :), Le Forum ,

Thierry :), Merci pour ta participation :cool: ca fait plaisir :D j'ai regardé tes modifications, c'est trés intéressant et surtout trés instructif et j'espère pouvoir les réutiliser ! ;)

le coup des majuscules pour les mois c'est super pratique et la date du jour par défault aussi ! :D

Je regarderais tout ca en détail quand je serais en repos :)

Sinon je vais revoir un truc ou deux du genre déplacer le bouton de lancement dans une Feuil avec graphique mensuel et peut être annuel ;)

Merci beaucoup _Thierry :) :cool: et xhudi69 :) :cool:,

Passez une bonne soirée :)

A bientôt,

Yoyo77.
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re : macro comptage "mois"

Mais de rien xhudi69, Yoyo77

Je suis toujours heureux de pouvoir apprendre une truc à quelqu'un qui souhaite apprendre, j'ai eu aussi la même chance en venant sur XLD au début.

Une remarque pour Yoyo, on aurait pu boucler sur les Contrôles au lieu de faire ceci, mais l'ordre des Colonnes de la Feuille par rapport à l'Ordre du nom des TextBox est complètement "banania" lol

Code:
With Sheets(MoisNom)
     NV = .Range("A65500").End(xlUp).Row + 1
        
    .Range("B" & NV).Value = ComboBox1.Value
    .Range("A" & NV).Value = CDate(TextBox1.Value)
''Ici je ne sais pas ce qui est obligatoire ou pas (voir TAG plus haut) donc je fais une condition sinon le Cdbl va planter ...
    If IsNumeric(Me.TextBox2) Then .Range("D" & NV).Value = CDbl(TextBox2.Value)
    If IsNumeric(Me.TextBox3) Then .Range("O" & NV).Value = CDbl(TextBox3.Value)
    If IsNumeric(Me.TextBox4) Then .Range("E" & NV).Value = CDbl(TextBox4.Value)
    If IsNumeric(Me.TextBox5) Then .Range("N" & NV).Value = CDbl(TextBox5.Value)
    If IsNumeric(Me.TextBox6) Then .Range("J" & NV).Value = CDbl(TextBox6.Value)
    If IsNumeric(Me.TextBox7) Then .Range("K" & NV).Value = CDbl(TextBox7.Value)
    If IsNumeric(Me.TextBox8) Then .Range("H" & NV).Value = CDbl(TextBox8.Value)
    If IsNumeric(Me.TextBox9) Then .Range("F" & NV).Value = CDbl(TextBox9.Value)
    .Range("R" & NV).Value = TBComment.Value
    
End With

Mais plutôt comme ceci .... Mais attention NON-Applicable à ton cas Yoyo77 ... Vu que l'ordre est en vrac ! (faut penser à tout avant de faire la Feuille et le UserForm...)

Code:
Dim x As Byte, c As Byte
x = 1
With Sheets(MoisNom)
     NV = .Range("A65500").End(xlUp).Row + 1
    
For Each Ctrl In Me.Controls
        If TypeOf Ctrl Is MSFORMS.TextBox Then
        
            If Ctrl.Name = "TextBox" & x Then
               If IsNumeric(Ctrl.Value) Then .Cells(NV, x).Value = CDbl(Ctrl.Value)
             x = x + 1
            End If
        End If
   
Next Ctrl
End With


Ici un vieux fil de discussion où je m'étais amusé ...

https://www.excel-downloads.com/thr...sse-par-boucles-sur-controls-x-methodes.8611/

Il doit y en avoir pas mal d'autres sur les Demo UserForm...

Bonne soirée
@+Thierry
 

Discussions similaires

Réponses
21
Affichages
421

Statistiques des forums

Discussions
312 391
Messages
2 087 985
Membres
103 690
dernier inscrit
LeDuc