Gestion des dates et +

JOZZ

XLDnaute Junior
Bonjour à toutes et à tous et le Forum,

dans le code vba du fichier joint je ne sais pas comment faire pour afficher dans le champ "date" la date du jour (avec possibilité de la modifier) et faire en sorte que celle-ci ne soit pas enregistrée éventuellement au format US, c'est ce qui se passe au boulot!!!.
j'ai aussi un autre problème quand il n'y a qu'un enregistrement il m'affiche "fiche de poste 1 sur 65536, et en plus pas moyen d'ajouter un enregistrement???

Merci à vous si vous pouvez m'aider...

Jozz
 

Pièces jointes

  • FdP.xls
    66.5 KB · Affichages: 56
  • FdP.xls
    66.5 KB · Affichages: 49
  • FdP.xls
    66.5 KB · Affichages: 55

Robert

XLDnaute Barbatruc
Repose en paix
Re : Gestion des dates et +

Bonsoir Jozz, bonsoir le forum,

Essaie comme ça (voir les trois dernières lignes du code d'initialisation de l'UserForm) :
Code:
Private Sub UserForm_Initialize()
Dim Bcle&, Cel As Range, ArrTb
  Set ColTb = New Collection
  ArrTb = Array(TextBDate, TextBNom, TextBPrenom, ComboBArret, ComboBPoste, TextBAS1, TextBAS2)
  For Bcle = 0 To UBound(ArrTb)
    ColTb.Add ArrTb(Bcle), ArrTb(Bcle).Name
  Next Bcle
  
  With F1
    Set PlageBase = .Range("B3", .Range("B3").End(xlDown))
  End With
  With SpinBBase
    .Min = 1
    .Max = PlageBase.Rows.Count
    .Value = 1
  End With
  ChargeListArret
  ChargeListPoste
Me.TextBDate.Value = Date
Me.TextBDate.SelStart = 0
Me.TextBDate.SelLength = Len(Me.TextBDate.Value)
End Sub
 

gfortin9

XLDnaute Occasionnel
Re : Gestion des dates et +

Allô!

Regarde le format de la cellule. Si le format ressemble à ceci : *2001-03-04 c'est ça la cause.

La note mentionne ceci : Les formats Date affichent les numéros de série date et heure comme valeurs date. Les formats Date précédés d'un astérisque (*) répondent aux changements dans les paramètres régionaux de date et d'heure qui sont spécifiés pour le système d'exploitation. Les formats sans astérisque ne sont pas affectés par le système d'exploitation.

Donc regarde le format des cellules qui reçoivent les dates.

gf
 

JOZZ

XLDnaute Junior
Re : Gestion des dates et +

Bonsoir gfortin9,

déjà merci de te pencher sur mon problème. Mais malheureusement ça ne fonctionne pas. Lorsque je valide une modif. ou un enregistrement le format se change automatiquement et l'astérisque réapparait le tout en ayant modifié dans le champ de la base en jj/mm/aaaa. ?????
 

gfortin9

XLDnaute Occasionnel
Re : Gestion des dates et +

Allô!

Je crois comprendre que tu désires l'affichage de la date : jj-mm-aaaa.

Je viens de tester ton fichier du post #1 et la date s'affiche bien dans le Userform et la feuille si les paramètres régionaux de la machine son jj-mm-aaaa.

En fait, l'affichage suit les paramètres régionaux de la machine.

Au bureau, on a uniformisé le format de la date sur toutes les machines. Ainsi, on a plus de surprise.

GF
 

gfortin9

XLDnaute Occasionnel
Re : Gestion des dates et +

Allô!

Pour ton autre problème d'erreur quand il n'y a qu'un seul enregistrement :

With F1
Set PlageBase = .Range("B3", .Range("B65535").End(xlUp))
End With
With SpinBBase
.Min = 1
.Max = PlageBase.Rows.Count
.Value = 1
End With

Au lieu de dessendre pour trouver la dernière ligne (avec une seule ligne ça donne 0 ligne), il faut monter. Ainsi, ça donne au moins une ligne.

gf
 

gfortin9

XLDnaute Occasionnel
Re : Gestion des dates et +

Allô!

Pour la date qui n'a pas le bon format, copie et exécute cette macro. La boîte de dialogue va réponde :
0 pour le format "mm/dd/yyyy"
1 pour le format "dd/mm/yyyy"
2 pour le format "yyyy/mm/dd"
End Sub

Code:
Sub TestFormatDate()

MsgBox Application.International(xlDateOrder)

'  Case 0
'    DDateFormat = "mm/dd/yyyy"
'  Case 1
'    DDateFormat = "dd/mm/yyyy"
'  Case 2
'    DDateFormat = "yyyy/mm/dd"
End Sub

Ceci va nous valider quel format de date est utilisé par Excel sur ta machine.

gf
 

Discussions similaires

Réponses
7
Affichages
505

Statistiques des forums

Discussions
312 330
Messages
2 087 349
Membres
103 526
dernier inscrit
HEC