Format numérique dans un useform

Bonjour

belsamis010975 a écrit :

Par contre pour les dates excel veut systématiquement me les convertir.

Si cela fonctionne

J'ai testé pour le 1er CODE SAP

dans la base de données j'ai effacé G2

Avec l'userform GESTION_CONTACTS J'ai modifié en y mettant une date et cela a fonctionné

Inspires toi du code

Bonjour Banzaï,

Oui en effet cela fonctionne mais la date reste en format, idéalement je préférerai avoir une date en format nombre, comme ça pour faire les filtres les dates apparaîtront comme les autres

ou bien il faudrait convertir les textbox en nombre en cliquant sur modifié

J'ai essayé ce code en textbox 1 GESTION_CONTACT

Dis moi ce que tu en penses.

Dim D As Date

If Not IsDate(Me.TextBox1.Text) Then

Me.TextBox1.Text = ""

Me.TextBox1.SetFocus

Exit Sub

End If

D = CDate(Me.TextBox1.Text)

Me.TextBox1 = D 'Je ne sais pas quoi mettre ici pour que la date se place au bon endroit

Bonjour

Je ne comprends pas ta question

Si tu sais que ta TextBox1 est une date, pourquoi remettre en date la TextBox1 ?

J'ai du mal exprimer ce que je voulais dire.

Actuellement Lorsque je remplis une textbox ou il y a une date, une fois la modif apportée je regarde la feuille FICHIER DE BASE je fais un filtre sur la colonne (G) par ex. Les anciennes dates sont classées par années et celle que je viens de modifier et écrite jj/mm/aa, elle n'est pas réintégré dans l'année concernée.

Capture écran pour mon explication hasardeuse.

dates

Bonjour

Problème des boucles sur les contrôles, s'ils n'ont pas les mêmes type de données

Voir dans la procédure Private Sub ToggleButton1_Click()

A tester

Bonjour Banzaï,

J'ai repéré la boucle qui fonctionne sur la procédure Private Sub ToggleButton1_Click()

Ws.Range("G" & ligne).NumberFormat = "dd/mm/yy;@" ' format de cellule date avec l'année sur 2 chiffres = OK FONCTIONNE PARFAITEMENT,

Par contre sur l'useform MACHINES rien à faire les colonnes BE;BF;BV;BW;BX;BY;CA et CO équivalent aux Textbox 35;36;52-55;57 et 71.

J'ai remplacé

Ws.Range("G" & ligne).NumberFormat = "dd/mm/yy;@

par

Range(ligne & 52).NumberFormat = "dd/mm/yy;@ au cas ou (52) étant le n° de la colonne date précèdante SAV.

Pareil pour le Useform NOUVEAU_CONTACT rien à faire.

Ws.Range("G" & L).NumberFormat = "dd/mm/yy;@" ' format de cellule date avec l'année sur 2 chiffres

Je pète un plomb trop compliqué pour moi.

Bonjour

A tester

Bonjour Banzaï,

Le code que tu as fait fonctionne super,

J'ai essayé de l'adapter sur le userform NOUVEAU_CONTACT et comme d'hab ça foire.

Problème de date non convertit

le total machines et accessoires qui ne se reporte pas sur la feuille.

Bonjour

Il faut que me dises/notes les TextBox ainsi que les cellules correspondantes qui peuvent avoir une date

Bonjour Banzaï,

ok voici les textbox qui recevrons des dates : textbox 4, 10, 110-111, 52 à 55, 57, 71

Les totaux sont les textbox 124 pour les machines le calcul se fait bien dans textbox mais elle ne s'inscrit pas sur la feuille colonne Y et 125 pour les accessoires elle doit s'inscrire en colonne DF.

Et pareil mettre La X si le total machine sup à 0 textbox126 colonne X.

Merci

Bonjour

A tester

Bonjour

Les totaux ne s'affichent pas en colonne Y = textob124 et colonne DF = texbox125.

Pour le reste génial.

Dernière question et je clôture le sujet sur le useform.

GESTION_CONTACT tu as mis le code qui permet de mettre une X en colonne C si une des textbox est modifiée, idéalement il faudrait que la X soit affichée que si une des textbox a partir de la textbox3 et non à partir de la textbox1 soit modifiée

Exemple :

Si on modifie la colonne B=texbox1 alors ne rien faire, si colonne D à T= textbox 3 à 19 alors X en colonne C= texbox2.

Cordialement

Samy

Bonjour

Modifies la ligne correspondante dans la procédure Private Sub ToggleButton1_Click()

        Else
          Ws.Cells(ligne, I + 1) = Me.Controls("TextBox" & I)   ' On écrit la nouvelle valeur
        End If
       If I > 2 ThenWs.Range("C" & ligne) = "X"     ' On note "Modification"
      End If
    End If
  Next I

Ca fonctionne pour la modification.

Par contre les totaux dans NOUVEAUX_CONTACTS pour les machines et thermos se font bien dans le userform mais ils ne veulent pas s'inscrire sur la feuille de calcul.

Bonjour

belsamis010975 a écrit :

Par contre les totaux dans NOUVEAUX_CONTACTS pour les machines et thermos se font bien dans le userform mais ils ne veulent pas s'inscrire sur la feuille de calcul.

Je croyais que tu l'avais fait

2 lignes à écrire ce n'est pas compliqué

Rajoutes dans la procédure Private Sub CommandButton1_Click()

      .Range("Y" & L).Value = Me.TextBox124.Value
      .Range("DF" & L).Value = Me.TextBox125.Value

Bonjour Banzaï,

Est ce qu'il est possible de faire ça, j'explique mon truc.

J'ai adapté un code à mon projet, sauf qu'il fait référence qu'à une colonne (BV) en fait je souhaiterai à l'ouverture du userform qu'il me propose de choisir les colonnes à filtrer de BV à BY le userform s'appel F_calendrier2dates une fois le choix fait l'utilisateur puisse faire son choix de dates.

Cordialement

Bonjour

Je ne comprends rien

belsamis010975 a écrit :

J'ai adapté un code à mon projet, sauf qu'il fait référence qu'à une colonne (BV)

Comment ça il ne fait référence qu'à cette colonne, explique clairement ?

Où dans le code tu fais référence à cette colonne pour afficher un enregistrement ?

belsamis010975 a écrit :

il me propose de choisir les colonnes à filtrer de BV à BY

Pourquoi filtrer ?

Lors des modifications/ajout les données vont suivre ?

Salut Banzaï,

En fait je veux simplifier l'utilisation de ce fichier car beaucoup d’utilisateur ont du mal à l’exploiter correctement vu le nombre de colonne.

Les dates SAV sont les principales données dont ils ont besoin quotidiennement. Donc j’ai mis ce code pour qu’ils puissent facilement filtrer les clients qu’ils doivent voir rapidement.

Comme j’ai des dates : précédentes SAV / dernières SAV / visite commerciale /visite d’urgence / visite prévu le

Colonne : BV / BW / BY / CA

Ce que je souhaiterai qu’en cliquant sur « filtre dates SAV » j’ai créé 4 boutons qui font références aux colonnes indiquées. Le problème faut-il que je recopie le code à chaque bouton, ou il y a un code qui pourrait afire autrement.

Voici le code pour l’instant seul le bouton Date précédente visite SAV fonctionne.

Private Sub Bfiltre_Click()

If Not IsDate(Me.date_début) Or Not IsDate(Me.date_fin) Then Exit Sub

[A1].AutoFilter Field:=[color=#FFFF00]74, Criteria1:=">=" & Format(CDate(Me.date_début), "mm/dd/yy"), _ (pour la 74eme colonne)

Operator:=xlAnd, Criteria2:="<=" & Format(CDate(Me.date_fin), "mm/dd/yy")

End Sub

Bonjour

A tester

Je tiens à te remercier Banzaï pour toute l'aide que tu m"as apporter pour finaliser mon projet.

Rechercher des sujets similaires à "format numerique useform"