J'ai ceci qui ne fonctionne pas, txtMarchPaK.Text = String.Format(("0;C"), txt)
txt contient bien la chaîne 12.5 et je veux afficher 12.50 E
C'est là le problème. Tu utilises un format de nombre avec une chaîne. Essaie ceci :
Dim d as Double = Double.Parse(txt) txtMarchPaK.Text = String.Format("C", d)
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
djmcg
Bonsoir/Bonjour,
Merci Fred d'avoir pris la peine de répondre. Très attentif a ta suggestion, avec laquelle d'ailleurs j'apprends que je ne peux formaté une chaîne.
Que ce soit ton exemple ou encore texto : txtMarchPaK.Text = String.Format("(0;C)", 123.45)
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions. Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Merci encore pour ton aide.
Fred a écrit :
Dans : news:, djmcg disait :
Bonjour,
Bonjour,
J'ai ceci qui ne fonctionne pas, txtMarchPaK.Text = String.Format(("0;C"), txt)
txt contient bien la chaîne 12.5 et je veux afficher 12.50 E
C'est là le problème. Tu utilises un format de nombre avec une chaîne. Essaie ceci :
Dim d as Double = Double.Parse(txt) txtMarchPaK.Text = String.Format("C", d)
Bonsoir/Bonjour,
Merci Fred d'avoir pris la peine de répondre.
Très attentif a ta suggestion, avec laquelle d'ailleurs j'apprends que
je ne peux formaté une chaîne.
Que ce soit ton exemple ou encore texto :
txtMarchPaK.Text = String.Format("(0;C)", 123.45)
Je me dit que le problème viens d'ailleurs.
A savoir : y'a pas un imports a faire outre les imports dans les
référence de l'explorateur de solutions.
Je dit cela parce-que après avoir essayé ton exemple, il affiche
toujours la chaîne qui se trouve dans les guillemets. Or ces pas
possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Merci encore pour ton aide.
Fred a écrit :
Dans : news:eWArsVaoHHA.4428@TK2MSFTNGP06.phx.gbl,
djmcg disait :
Bonjour,
Bonjour,
J'ai ceci qui ne fonctionne pas,
txtMarchPaK.Text = String.Format(("0;C"), txt)
txt contient bien la chaîne 12.5 et je veux afficher 12.50 E
C'est là le problème. Tu utilises un format de nombre avec une chaîne.
Essaie ceci :
Dim d as Double = Double.Parse(txt)
txtMarchPaK.Text = String.Format("C", d)
Merci Fred d'avoir pris la peine de répondre. Très attentif a ta suggestion, avec laquelle d'ailleurs j'apprends que je ne peux formaté une chaîne.
Que ce soit ton exemple ou encore texto : txtMarchPaK.Text = String.Format("(0;C)", 123.45)
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions. Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Merci encore pour ton aide.
Fred a écrit :
Dans : news:, djmcg disait :
Bonjour,
Bonjour,
J'ai ceci qui ne fonctionne pas, txtMarchPaK.Text = String.Format(("0;C"), txt)
txt contient bien la chaîne 12.5 et je veux afficher 12.50 E
C'est là le problème. Tu utilises un format de nombre avec une chaîne. Essaie ceci :
Dim d as Double = Double.Parse(txt) txtMarchPaK.Text = String.Format("C", d)
Fred
Dans : news:, djmcg disait :
Bonsoir/Bonjour,
Bonjour,
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de chaîne :
Dim d As Double = 123.45 Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de l'objet.
2) On utilise la méthode partagée Format de la classe String en lui spécifiant un ou plusieurs paramètres de type Object (quelconques donc), qui vont venir remplacer les accolades dans la chaîne de format. Les emplacements dans la chaîne de Format sont matérialisés par {0}, {1}, {2} etc ... Sachant que l'on peut inclure un formatage particulier dans les accolades : {0:frmt0}, {1:frmt1} etc ... Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45 Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est {0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que ces exemples te seront utiles, cette fois ci j'ai pris le temps de les essayer ;-) .
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:e2yy5ijoHHA.4424@TK2MSFTNGP03.phx.gbl,
djmcg disait :
Bonsoir/Bonjour,
Bonjour,
Je me dit que le problème viens d'ailleurs.
A savoir : y'a pas un imports a faire outre les imports dans les
référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche
toujours la chaîne qui se trouve dans les guillemets. Or ces pas
possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les
versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de
chaîne :
Dim d As Double = 123.45
Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de
l'objet.
2) On utilise la méthode partagée Format de la classe String en lui
spécifiant un ou plusieurs paramètres de type Object (quelconques donc),
qui vont venir remplacer les accolades dans la chaîne de format. Les
emplacements dans la chaîne de Format sont matérialisés par {0}, {1},
{2} etc ... Sachant que l'on peut inclure un formatage particulier dans
les accolades : {0:frmt0}, {1:frmt1} etc ...
Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45
Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est
{0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent
que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que
ces exemples te seront utiles, cette fois ci j'ai pris le temps de les
essayer ;-) .
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de chaîne :
Dim d As Double = 123.45 Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de l'objet.
2) On utilise la méthode partagée Format de la classe String en lui spécifiant un ou plusieurs paramètres de type Object (quelconques donc), qui vont venir remplacer les accolades dans la chaîne de format. Les emplacements dans la chaîne de Format sont matérialisés par {0}, {1}, {2} etc ... Sachant que l'on peut inclure un formatage particulier dans les accolades : {0:frmt0}, {1:frmt1} etc ... Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45 Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est {0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que ces exemples te seront utiles, cette fois ci j'ai pris le temps de les essayer ;-) .
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
djmcg
Surtout ne t'excuses pas Fred ces déjà pas mal de prendre le temps de répondre. Même si ta première réponse n'était pas extras concernant la syntaxe, elle à eu pour effet une nouvelle fois d'attirer mon attention sur ce que j'avais pas compris. Et si maintenant cela fonctionne, j'ai toujours pas compris, mais comme dit un amis que je ne connais pas et qui est sur le forum, "sujet à revoir". :-))
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK")) Dim d As Double = Double.Parse(txt) txtMarchPaK.Text = (String.Format("{0:C}", d))
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous. J'ai l'habitude de mettre les dim en entête, mais celui-ci il semble que je ne pourrais pas.
Encore merci pour Ton et Votre aides.
Jean-Marie
Fred a écrit :
Dans : news:, djmcg disait :
Bonsoir/Bonjour,
Bonjour,
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de chaîne :
Dim d As Double = 123.45 Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de l'objet.
2) On utilise la méthode partagée Format de la classe String en lui spécifiant un ou plusieurs paramètres de type Object (quelconques donc), qui vont venir remplacer les accolades dans la chaîne de format. Les emplacements dans la chaîne de Format sont matérialisés par {0}, {1}, {2} etc ... Sachant que l'on peut inclure un formatage particulier dans les accolades : {0:frmt0}, {1:frmt1} etc ... Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45 Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est {0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que ces exemples te seront utiles, cette fois ci j'ai pris le temps de les essayer ;-) .
Surtout ne t'excuses pas Fred ces déjà pas mal de prendre le temps de
répondre. Même si ta première réponse n'était pas extras concernant la
syntaxe, elle à eu pour effet une nouvelle fois d'attirer mon attention
sur ce que j'avais pas compris.
Et si maintenant cela fonctionne, j'ai toujours pas compris, mais comme
dit un amis que je ne connais pas et qui est sur le forum, "sujet à
revoir". :-))
Voici le travail fini, fini entre guillemet bien sûr :
txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Dim d As Double = Double.Parse(txt)
txtMarchPaK.Text = (String.Format("{0:C}", d))
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu
de tous.
J'ai l'habitude de mettre les dim en entête, mais celui-ci il semble que
je ne pourrais pas.
Encore merci pour Ton et Votre aides.
Jean-Marie
Fred a écrit :
Dans : news:e2yy5ijoHHA.4424@TK2MSFTNGP03.phx.gbl,
djmcg disait :
Bonsoir/Bonjour,
Bonjour,
Je me dit que le problème viens d'ailleurs.
A savoir : y'a pas un imports a faire outre les imports dans les
référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche
toujours la chaîne qui se trouve dans les guillemets. Or ces pas
possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les
versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de
chaîne :
Dim d As Double = 123.45
Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de
l'objet.
2) On utilise la méthode partagée Format de la classe String en lui
spécifiant un ou plusieurs paramètres de type Object (quelconques donc),
qui vont venir remplacer les accolades dans la chaîne de format. Les
emplacements dans la chaîne de Format sont matérialisés par {0}, {1},
{2} etc ... Sachant que l'on peut inclure un formatage particulier dans
les accolades : {0:frmt0}, {1:frmt1} etc ...
Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45
Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est
{0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent
que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que
ces exemples te seront utiles, cette fois ci j'ai pris le temps de les
essayer ;-) .
Surtout ne t'excuses pas Fred ces déjà pas mal de prendre le temps de répondre. Même si ta première réponse n'était pas extras concernant la syntaxe, elle à eu pour effet une nouvelle fois d'attirer mon attention sur ce que j'avais pas compris. Et si maintenant cela fonctionne, j'ai toujours pas compris, mais comme dit un amis que je ne connais pas et qui est sur le forum, "sujet à revoir". :-))
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK")) Dim d As Double = Double.Parse(txt) txtMarchPaK.Text = (String.Format("{0:C}", d))
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous. J'ai l'habitude de mettre les dim en entête, mais celui-ci il semble que je ne pourrais pas.
Encore merci pour Ton et Votre aides.
Jean-Marie
Fred a écrit :
Dans : news:, djmcg disait :
Bonsoir/Bonjour,
Bonjour,
Je me dit que le problème viens d'ailleurs. A savoir : y'a pas un imports a faire outre les imports dans les référence de l'explorateur de solutions.
Non, cela ne passerait pas à la compilation.
Je dit cela parce-que après avoir essayé ton exemple, il affiche toujours la chaîne qui se trouve dans les guillemets. Or ces pas possible, ma syntaxe est bonne et je l'ai même simplifié pour le test.
Tu as raison, je ne t'ai pas présenté la bonne syntaxe, voici les versions correctes (deux méthodes) :
1) On utilise la méthode ToString de l'objet à représenter sous forme de chaîne :
Dim d As Double = 123.45 Console.WriteLine(d.ToString("(0);(C)"))
Il est bien entendu que les possibilités de Format sont liées au type de l'objet.
2) On utilise la méthode partagée Format de la classe String en lui spécifiant un ou plusieurs paramètres de type Object (quelconques donc), qui vont venir remplacer les accolades dans la chaîne de format. Les emplacements dans la chaîne de Format sont matérialisés par {0}, {1}, {2} etc ... Sachant que l'on peut inclure un formatage particulier dans les accolades : {0:frmt0}, {1:frmt1} etc ... Ce qui donnerait, sur ton exemple :
Dim d As Double = 123.45 Console.WriteLine(String.Format("{0:(0);(C)}", d))
un exemple plus général :
Console.WriteLine(String.Format("Aujourd'hui, {1:D}, la valeur de d est {0:(0);(C)}", d, DateTime.Now))
Tu noteras que les paramètres peuvent apparaître dans un ordre différent que l'ordre dans lequel ils sont passés à Format.
Toutes mes excuses pour ma première réponse approximative ! J'espère que ces exemples te seront utiles, cette fois ci j'ai pris le temps de les essayer ;-) .
Fred
Dans : news:, djmcg disait :
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans la base (tu dois connaître son type) Pourquoi ne pas écrire directement : Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ? Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la notion de portée de variable au niveau d'un bloc. Donc, pour des variables de travail, je les déclare, et souvent initialise en même temps, à l'endroit où j'en ai besoin.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:ufeQb7qoHHA.4192@TK2MSFTNGP06.phx.gbl,
djmcg disait :
Voici le travail fini, fini entre guillemet bien sûr :
txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans
la base (tu dois connaître son type)
Pourquoi ne pas écrire directement :
Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ?
Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu
de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la
notion de portée de variable au niveau d'un bloc.
Donc, pour des variables de travail, je les déclare, et souvent
initialise en même temps, à l'endroit où j'en ai besoin.
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans la base (tu dois connaître son type) Pourquoi ne pas écrire directement : Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ? Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la notion de portée de variable au niveau d'un bloc. Donc, pour des variables de travail, je les déclare, et souvent initialise en même temps, à l'endroit où j'en ai besoin.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
djmcg
Je viens d'essayer ta dernière proposition et bien sûr cela fonctionne. Ben, je crois que je vais t'imiter !! tu veux bien ? :-)) Bien sûûûûûr toutes proportion gardée, je débute moi en vb 2005.net :-)) En tous cas un grand merci.
Fred a écrit :
Dans : news:, djmcg disait :
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans la base (tu dois connaître son type) Pourquoi ne pas écrire directement : Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ? Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la notion de portée de variable au niveau d'un bloc. Donc, pour des variables de travail, je les déclare, et souvent initialise en même temps, à l'endroit où j'en ai besoin.
Je viens d'essayer ta dernière proposition et bien sûr cela fonctionne.
Ben, je crois que je vais t'imiter !! tu veux bien ? :-))
Bien sûûûûûr toutes proportion gardée, je débute moi en vb 2005.net :-))
En tous cas un grand merci.
Fred a écrit :
Dans : news:ufeQb7qoHHA.4192@TK2MSFTNGP06.phx.gbl,
djmcg disait :
Voici le travail fini, fini entre guillemet bien sûr :
txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans
la base (tu dois connaître son type)
Pourquoi ne pas écrire directement :
Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ?
Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu
de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la
notion de portée de variable au niveau d'un bloc.
Donc, pour des variables de travail, je les déclare, et souvent
initialise en même temps, à l'endroit où j'en ai besoin.
Je viens d'essayer ta dernière proposition et bien sûr cela fonctionne. Ben, je crois que je vais t'imiter !! tu veux bien ? :-)) Bien sûûûûûr toutes proportion gardée, je débute moi en vb 2005.net :-)) En tous cas un grand merci.
Fred a écrit :
Dans : news:, djmcg disait :
Voici le travail fini, fini entre guillemet bien sûr : txt = CStr(ObjetDataTable.Rows(RowNumber).Item("MarchPaK"))
Là tu transformes en texte une donnée, qui, à priori est un nombre dans la base (tu dois connaître son type) Pourquoi ne pas écrire directement : Dim d As Double = ObjetDataTable.Rows(RowNumber).Item("MarchPaK") ? Cela t'évitera de le retransformer ensuite.
Ce qui me chiffone c'est le dim (déclaration de d en double) au milieu de tous.
Oui, maintenant je ne procède plus que comme cela. Surtout qu'on a la notion de portée de variable au niveau d'un bloc. Donc, pour des variables de travail, je les déclare, et souvent initialise en même temps, à l'endroit où j'en ai besoin.