Gambas France BETA


Pas de compte ? Incription

écrire date en format français

Ce sujet est résolu.

1
AuteurMessages
stracoma#1 Posté le 21/8/2015 à 13:11:48
Apprentissage programmation pour le plaisirBonjour tout le monde. J'ai besoin de vous pour résoudre un problème.

Voilà le code:
1
2
3
4
5
6
7
8
9
PUBLIC SUB Button1_Click()
DIM date1 AS DATE
DIM n AS INTEGER
DIM date2 AS DATE
date1 = CDate(TextBox1.Text)
n = CInt(TextBox2.Text)
date2 = date1 + n
Label1.Text = date2
END

jusque ici pas de problème.
Comment faire pour donner à l'utilisateur la possibilité d'entrer dans textbox1 la date au format français(jj/mm/aaaa)
au nv de textbox1 j'ai essayé ceci mais sans succès:
1
2
3
4
5
6
7
8
9
10
11
12
PUBLIC SUB Button1_Click()

DIM date1 AS DATE
DIM n AS INTEGER
DIM date2 AS DATE
date1 = Format$(CDate(TextBox1.Text), "mm/dd/yyyy")

n = CInt(TextBox2.Text)
date2 = date1 + n
Label1.Text = date2

END

Merci à vous
SVP patience avec moi car neurones > 50 ans
jeanyvon#2 Posté le 21/8/2015 à 13:31:22
Gambas? Ma! Et gustoBonjour,
Et si tu prenais des dateChooser à la place des textBox?

Ils sont en français
Vieillir? On peut retarder mais pas y échapper!
Reivillo#3 Posté le 21/8/2015 à 14:06:33
C' est ici, et nul part ailleurs. « Et pis c'est tout ! »Bonjour @ Toutes & Tous.

@ jeanyvon
D"accord avec toi, mais tu m'a devancé... donc + 1 pour toi... :D

Reivillo.
Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015)
LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr .
Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous...
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3 -y
Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016)
Pour la Doc, c'est vers là: Documentation Gambas3 FR
vuott#4 Posté le 21/8/2015 à 18:41:57
Ne cedere ineluctabili possimus
Comment faire pour donner à l'utilisateur la possibilité d'entrer dans textbox1 la date au format français(jj/mm/aaaa)


Hello stracoma,

I suggest this code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PUBLIC SUB Button1_Click()

DIM date1, date2 AS DATE
DIM n AS INTEGER
DIM dt AS String[]

dt = Scan(TextBox1.Text, "*/*/*")

date1 = Date(dt[2], dt[1], dt[0])

n = Val(TextBox2.Text)
date2 = date1 + n

Label1.Text = Format$(date2, "dd/mm/yyyy")

END
« Vita non suavis esse potest, nec Mors amara. »
stracoma#5 Posté le 21/8/2015 à 23:17:14
Apprentissage programmation pour le plaisirBonsoir à vous.
dateChooser résout la saisie dans textbox1 mais ne résout as le problème d'affichage du label.text qui reste toujours au format mm/dd/yyyy. Par contre le code de vuott marche à merveille, mais il me faut du temps pour le comprendre.
Merci de votre aide
SVP patience avec moi car neurones > 50 ans
vuott#6 Posté le 22/8/2015 à 00:11:30
Ne cedere ineluctabili possimus
... mais il me faut du temps pour le comprendre.


Bonsoir stracoma,
you have to concentrate on Scan() function.
« Vita non suavis esse potest, nec Mors amara. »
stracoma#7 Posté le 22/8/2015 à 14:10:26
Apprentissage programmation pour le plaisirBonjour. Là je viens de comprendre le principe de la fonction Scan().
Mai j'ai aussi découvert:
- Pour avoir une date à partir d'un string il faut: mm/dd/yyyy
- assignation directe d'une date: yyyy,mm,dd

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
PUBLIC SUB Main()
DIM str1 AS STRING
DIM str2 AS STRING
DIM date1 AS DATE
DIM date2 AS DATE
DIM tablo AS String[]

str1 = "25/10/2015"
tablo = Scan(str1, "*/*/*")
date1 = Date(tablo[2], tablo[1], tablo[0])

str2 = "10/25/2015"
date2 = CDate(str2)

PRINT date1
PRINT date2

END

Merci.
SVP patience avec moi car neurones > 50 ans
stracoma#8 Posté le 22/8/2015 à 14:37:16
Apprentissage programmation pour le plaisirDans mon petit projet exercice, je préfère garder DateChooser à la place de textbox, car l'utilisateur peut entrer la date de différentes manières:
04/05/2015, 04-05-2015 ou 04 05 2015 .....
Le dateChooser résout donc ce problème.
mon projet semi fini (je dois y ajouter l'âge de la grossesse en semaines) est le suivant:


le code:
1
2
3
4
5
6
PUBLIC SUB Button1_Click()

DIM date1 AS DATE
date1 = DateChooser1.Value + 287
Label1.Text = Format$(date1, "dd/mm/yyyy")
END
SVP patience avec moi car neurones > 50 ans
Reivillo#9 Posté le 22/8/2015 à 14:59:36
C' est ici, et nul part ailleurs. « Et pis c'est tout ! »Bonjour stracoma.

Avec tes Retours, tu vas en aider plus d'un! Merci...

Pour les Déclarations de même types, tu peux les mettre Sur une seule ligne.
Exemple:
1
DIM str1, str2 AS STRING
Idem pour la Tabulation avec Print:
1
PRINT date1, date2
Ce qui permet de réduire les lignes.
Mais là, c'est à l'appréciation de chacun... ;)

Reivillo.
Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015)
LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr .
Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous...
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3 -y
Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016)
Pour la Doc, c'est vers là: Documentation Gambas3 FR
stracoma#10 Posté le 26/8/2015 à 20:31:15
Apprentissage programmation pour le plaisirBonjour.
Je me 'regambasse' après quelques jours de vacances.
Voilà mon code final qui calcule aussi la date écoulée en semaines et en jours à partir d'une date. je n'ai plus besoin de passer par des variables:
1
2
3
4
5
PUBLIC SUB Button1_Click()
lbl_accouch.Text = Format$(DateAdd(DateChooser1.Value, gb.Day, 287), "dd/mm/yyyy")
lbl_sem.Text = DateDiff(DateChooser1.Value, Date, gb.Week)
lbl_jours.Text = DateDiff(DateChooser1.Value, Date, gb.Day) % 7
END
SVP patience avec moi car neurones > 50 ans
1