みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
win10、FM17
商品というフィールドがあり、1レコードにリストとして下記のように改行されて入っています。
ABC,あいうえお,1,000枚,(2)
ABC,かきくけこ,2,000枚,(1)
ABC,かきくけこ,500枚,(1)
それぞれ文末にある最後の(2)や(1)のみ、文字色を赤に変更したいでのですが
どうすればいいでしょうか。
もしくは()内の数字だけでも色を変更したいです。
すみません、エラーで投稿できなかったのかと思い、同じ投稿をもう一つ上げてしまいました。
Last edited by cybe (2022-10-18 10:04:49)
Offline
自分で解決できました。
Substitute ( GetValue ( 商品名 ; 1 ) ; "(" & RightWords ( GetValue ( 商品名 ; 1 ) ; 1 ) & ")" ; TextColor ("(" & RightWords ( GetValue ( 商品名 ; 1 ) ; 1 )& ")" ; RGB ( 255 ; 0 ; 0 ) ) )
Offline
解決してますけど、最初の1行だけ取り出してしまってますけどいいんですかね?
> 文末にある最後の(2)や(1)のみ、文字色を赤に変更
複数行に対応する再起式
Let ( [ $c = 0 ;
$k = ¶ ;
$t = 商品 & $k ;
$vc = ValueCount ( $t ) ;
$f = "Case ( $c = $vc ; $t ;
Let ( [ $c = $c + 1 ;
$p = Position ( $t ; $k ; 1 ; $c ) - 3 ;
$r = Middle ( $t ; $p ; 3 ) ;
$t = Replace ( $t ; $p ; 3 ; TextColor ( $r ; RGB ( 255 ; 0 ; 0 ) ) ) ] ;
Evaluate ( $f ) ) )" ] ;
Evaluate ( $f ) )
> $k = ¶
¶を直接使うとうまく行かないです。
なぜかは分かりません。。
Offline
$p = Position ( $t ; $k ; 1 ; $c ) - 3 ;
のところですよね。Evaluateするのでエスケープする必要があります。
$p = Position ( $t ; \¶ ; 1 ; $c ) - 3 ;
エスケープ分かってるんですが、、
\¶
“”¶””
“”\¶””
どれもダメでした、、
Offline
ん?
チポさんの式をフィールド計算式にコピペして、#5のように直して動くのを確認したあとに書きましたけど
ちなみに
$f = "Case ( $c = $vc ; $t ;
Let ( [ $c = $c + 1 ;
と書いてるところは、$fの値は2行になってません。""の中で改行すると、それは半角スペースを入れたのと同じです。
""の中に¶を書くと、それが改行なので、エスケープなしで
"$p = Position ( $t ; ¶ ; 1 ; $c ) - 3 ;"
と書いたものをEvaluateすると
$p = Position ( $t ;
; 1 ; $c ) - 3 ;
という式を計算しようとしてエラーになるわけです。
あ、計算式の設定ダイアログを見直したら、エスケープ文字が円でなくバックスラッシュになってました。
それをここにコピペするとまた¥に戻ります。
Macだと、\でなくバックスラッシュを打たないとだめだったかも?
あれ?私Windowsですが、\を入れても確定した時点でバックスラッシュになってました...いつのまに??
ああ
> Macだと、\でなくバックスラッシュを打たないとだめだったかも
これで出来ました。
ありがとうございます。
ちなみにこの掲示板で
\(半角の¥)
は
Macではバックスラッシュで表示されますね
Offline
元々同じ文字コードに違う文字を割り当ててしまったせいなので、どっちに見えるかはフォントによるわけなんですが
Windowsではずっと円に見えてたと思ったんですが...
今でも計算式のダイアログではバックスラッシュだけど「データベースの管理」のフィールド一覧の画面では円に見えますね...私の環境がおかしくなってるのかな?
本題とあんまり関係なくてすんません...
Pages: 1
[ Generated in 0.022 seconds, 9 queries executed - Memory usage: 516.6 KiB (Peak: 521.14 KiB) ]