みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になっております。
(Windows7 FM12です。)
初歩的な事かと思うのですが、過去ログで探すことが出来なかったので質問させてください。
カラーというフィールドに「ブルー」や「レッド」という文字が含まれていた場合
カラー英語フィールドに「Blue」や「Red」を返したい場合はどのような計算式にしたら良いでしょうか?
カラーフィールドには「ダークブルー」や「ライトレッド」というものもある為
Substituteを使い、["ブルー";"Blue"]にすると「ダークBlue」や「ライトRed」となってしまうので
中々うまくいきません。
この場合はどうしたら良いでしょうか?
ご教授お願い致します。
Substituteは左から順に書き換えるのでダークブルーを式の最初に書く・・・
色数が多かったら別テーブルにしたほうが楽?
Offline
旅人さん
返信ありがとうございます。
結構細かく色分けされていて、ブルー系・レッド系・ブラウン系....
とあり、今後も○○ブルーと増える可能性もあるので、「ブルー」を含む場合といった感じで
計算式を作りたいです。
完全一致で置き換えをするしか方法は無いでしょうか?
マスター化したほうがいいかも。
その単語をIMの辞書にしておいて、ふりがな機能を使って読み込む、という裏技も。
Offline
やっぱり、カラーとカラー英語の2フィールドを持つテーブルを作った方が
いいですよ。照合もカラーIDとかにしたほうがいいのかな。
Offline
Filter
で判定できるでしょう。
ブルーレッド
なんてないですよね?
Offline
皆さんご返信ありがとうございます。
入力の手間を考えると現在のドロップダウンリスト形式は外せないですし、
2フィールドも今後を考えると使い勝手が悪くなってしまいますので難しいです・・・。
チポさんの言うFilterを使ってみましたが、例えば Fliter( カラー ; "ブルー" )
とするとカラーフィールドに「ブリリアントブルー」というものがあると、結果が「ブブルー」になってしまいます。
文字列完全一致でフィルターを掛ける方法などありますでしょうか?
中々ムヅカシイです(-_-;)
Filter ("ブルー" ; カラー) = "ブルー"
この真偽でいいかと思ったんですが、
カラーの内容によってはマズい場合も考えられました ;;;
PatternCount
が1以上かの判定の方がいいか。。
Offline
思った以上に計算式が難しくなりそうですし、初心者の私には今回は
Substituteで完全一致のものを書き並べて変換していく方法を取ることにしました。
みなさんどうもありがとうございました。m(_ _)m
Filterを何とかうまく使えないかと、試行錯誤した所、
Filter ( Substitute ( カラー ; [ "ブルー" ; "Blue" ] ; [ "レッド" ; "Red" ] ) ; "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" )
とし、「ダークブルー」→「ダークBlue」→フィルターで英字のみ残すというやり方で「Blue」とすることが出来ました。
ヒントがあったおかげで出来ました。
ありがとうございましたm(_ _)m
また質問することがあると思いますが、その節は宜しくお願い致します。
文字列が含まれてるかどうかは、PositionとかPatternCountでわかります。
Case (
PatternCount ( カラー ; "ブルー" ) ; "Blue" ;
PatternCount ( カラー ; "レッド" ) ; "Red" ;
"" )
ブルーレッド
なんてないですよね?
というとこが肝心。
末尾だけ見るとか?
Pages: 1
[ Generated in 0.060 seconds, 10 queries executed - Memory usage: 521.73 KiB (Peak: 526.27 KiB) ]