質問

私の維持の為のアプリクライアントで使用される二つのです。イギリス、ポーランド

データベースに格納されイギリスの形式£1000.00通貨が、情報が集まっている地域ポーランドが1000,00の形式です。

私の質問は、VB6が機能する通貨の文字列を地域形式に変換し、又はいかないのではないかと思構文解析、文字列と置換したものである。?

ちなみいたCCurがだるいんです。

役に立ちましたか?

解決

あなたの情報を入力してくださいは、実際に格納された文字列として "£1000.00";で納されて数値形式です。

サイドバー: 通常、データベースの設定を保存金額から、 小数 データタイプとも呼ぶに対する 一部のDBs)、または浮動小数点数をとも呼ぶに対する ダブル).

そのため、時として保存されて 小数 特定の番号のような0.01を正確に表現は ダブル その番号で保存され、約、丸め誤差.

のデータベース が表示され きの格納として "£1000.00" でもあるフォーマットで表示されます。にVB6が機能 FormatCurrency うにいくつかのように1000文字列を返しよう "£1000.00".

すること FormatCurrency 関数には引数を指定する種類の通貨を利用します。ことになるので、すべてのロケール固有の機能をVBで、図の通貨から現在のロケールのシステム(窓からの制御パネル)。

ということに私のシステム

Debug.Print FormatCurrency(1000)

のまま印刷 $1,000.00, だっ施設まで格安料金プランを同じプログラムは、Windowsコンピュータセットのロケールでも印刷 £1,000.00, もちろん、何か全く異なります。

同様に、また一部のコードでは、どこかわからないで、ポーランドにとってのとすることで解析では、ユーザの文字列に変換する。そのコードは、Visual Basic、頼っている制御パネルか否かを決定するには"."または","での区切りとるかどうか"、"."は、小数点以下の桁数です。

の機能 CDbl に変換し、その引数を数字です。したがって、たとえば、私のシステムの

Debug.Print CDbl("1.200")

の一番のポイント、システムの制御パネルセットには欧州のフォーマットには、これはその数が一千二百.

この問題は、あるコンピュータの地域制御パネルで使用する設定"."として、数値桁区切り子が、彼らはタイピング"は、小数点以下の桁数セパレーターが不要になる。

他のヒント

何のデータベースを使用していま?何のデータタイプの量を保存す。

もし、常に変換する形式を他の必要はありませんずの解析る場合は、"."と","効率が良いのか悪いのかは不明です。する必要がある削除する"£"-看板などの場合に保存された文字列になります。

あそらく正しい答えを扱う文化物などが、最も簡単な方法がいずれかからの入力ポーランド入力、および置き換え、、、 そして店舗でのデータベースとしてのタイプ"お金"または"decimal"です。まっている場合もしれ設定可能なユーザ)は、常に数字の入力のいずれかポーランドは英語、機能を持っているところですべての入力の数字を変換し文字列に適切な"数"を入力します。また、目的を表示までを通して別の同様の機能は、ユーザーは常には、数値フォーマットも快適です。またここで重要なのは、この切り替えることで小数として、ユーザからのみスイッチで文字列の最後のステップ送信する前に、ユーザーです。

@KiwiBastardそのきっかけをつくっていきたいそう考えているかもしれない。ま保管量の"(n)varchar"分野を使用していま貨/小数点型です。場合、後者の場合、通貨記号とセパレータの追加により貴社のクライアント、あるい取り替える必要はありません。何らかのデータベースです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top