お騒がせいたします。
Format関数について、前にも書き込ませて
いただきましたが、どうも理解が・・
Var
data1 : String;
begin
with Table1 do
Begin
//-----省略-----//
Open;
Data1 := IntToStr(FieldByName('Field1'),AsInteger);
Data1 := Format?????
(このData1を3ケタ区切りとしたい。)
Form1.TMemo1.Text := Data1;
(フォームに3ケタ区切り表示)
TEditでもいいんですが・・
End;
End;
又、TMemoのTextに代入されたもの?は
カンマも含んだテキストと考えますが、
最後はこのTMemoのカンマを除いた
ものを、IntegerField型に
書込みしたいのですが・・
意味がわかります??
Format関数と、形式文字列をヘルプで見てください。
形式文字列のnが、3桁区切り指定のものです。
単純なものは
Format('%n', [値]);
です。
他にも、桁数の指定をするなど、形式文字列のヘルプに書いてあります。
カンマを取り除く処理で良いのであれば、一文字ずつ探して、その前後を連結するだけでも良いと思います。
Whileで回して、Pos関数やAnsiPos関数で','の位置を探し、見つかればCopyで前後を連結(カンマを取り除く)していけばできあがりです。
その場合、'12,,,,,345'も、'12345'にされてしまいますが。
「愛チュン」 Format('%n', [値]); よりも、FormatFloat('#,#', 値); が良いでチュン♪
「ごまき雀」 おや?愛チュン、それは何故?
「愛チュン」 ごまきカァ〜さん、Format('%n', [値]);は、値が整数だとエラーになるでチュン♪
「ごまき雀」 カァ〜さんじゃなくてママよ。カァ〜さんなんて言うとカラスが来ちゃうでしょ。
「瞳カラス」 ヨッおいらを呼んだカァ〜い?ついでだから文字列のカンマを取る便利な関数教えちゃおうカァ〜?
「愛チュン」 それは、StringReplace(sStr,',','',[rfReplaceAll]); でチュン♪
「瞳カラス」 なんや知っとったんカァ〜い。おいらの出番ないやんカァ〜
「ごまき雀」 そうよ、カラスはお呼びじゃないの。
「瞳カラス」 ん?やっぱお呼びでない?こりゃまたシツレイしやしたカァ〜。
「愛チュン」 もう…ギャグが古すぎるでガチョ〜ン!
「瞳カラス」 おいおい、そのギャグも古すぎやんカァ〜。
にしのさん、愛チュン&ごまき雀 with瞳カラス さん
レスありがとうございます。
Format関数や、形式文字列についてのヘルプ
は色々みているのですが・・
それで理解できないのは技術不足の限りで
申し訳ありません・・・
うまくいきました・・
愛チュン&ごまき雀 with瞳カラス
のレスにありました、
StringReplace(sStr,',','',[rfReplaceAll]);
関数、具体的な使い方がどうもできないのですが・・
With Table1 do
Begin
//-----省略-----//
Edit;
FieldByname('Field1'),asInteger :=
StrIntTo(カンマはずしのForm1.TMemo1.Text);
その関数はいったいどうやって??
Post;
end;
いろいろ変数に当てはめてみたのですが・・
ヘルプは見ましたか?
StringReplaceの戻り値が、変換後の文字列です。
愛チュン&ごまき雀 with瞳カラス さん
StringReplace関数があったんですね。前に使ったことはありましたが、すっかり忘れてました。
むむむ・・頑張ってみます・・
ありがとうございます。
ツイート | ![]() |