初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2021-04-14 17:02:03

フィールドを分けたら数字のみになる

FMS17とFMP17でWindows環境、ServerはMACMiniの構成です。
メーカー名と製品名が混在したフィールド(名前はメーカー)があります。
メーカー名と製品名の間はスペースが入っています
これを2つのフィールドに分けます。
そこで、新しい製品名フィールドに下記の計算式をつくりました
メーカー - Left ( メーカー  ; Position ( メーカー ; " "  ; 1 ; 1 )-1)
ところが、製品名にテキストがふくまれていても数字だけになってしまいます。
新しい製品名フィールドの計算フィールドはテキストにしています
なにが間違っているのでしょうか。よろしくお願いします。

Offline

#2 2021-04-14 17:21:03

Shin
Member

Re: フィールドを分けたら数字のみになる

再現しませんね。
フィールドの定義をもう一度見直してみてください。

最近は、スペース区切りのテキストを分けるときは、
GetValue ( Substitute ( テキスト ; " " ; ¶ ) ; 1 )
が流行です。数字を2にすると2個目、.... が取得できます。

Offline

#3 2021-04-14 17:35:00

Hiro
Member

Re: フィールドを分けたら数字のみになる

計算結果が数字タイプなのでは?

Offline

#4 2021-04-14 17:49:43

himadanee
Guest

Re: フィールドを分けたら数字のみになる

メーカーフィールドが数字なのでは。

#5 2021-04-14 18:31:23

Re: フィールドを分けたら数字のみになる

フィールドや計算結果はテキストにしています。

Offline

#6 2021-04-14 19:37:37

Re: フィールドを分けたら数字のみになる

Substitute ( テキスト ; " " ; ¶)でスペースを改行に変更するわけですね。で、1行目は空白の前の部分になりました。しかし、GetValue ( Substitute ( テキスト ; " " ; ¶ ) ; 2 )では、空白の後ろの部分になりません。スペースは一つしかありませんのでね。今回抽出したいのは後ろです。それでテキスト - GetValue ( Substitute ( テキスト ; " " ; ¶ ) ; 1) としました。
でも、数字だけになってしまうのはかわりありませんでした。

Offline

#7 2021-04-14 20:54:49

Shin
Member

Re: フィールドを分けたら数字のみになる

ターゲットにしているフィールドは、正しいですか?

Offline

#8 2021-04-14 21:02:02

himadanee
Guest

Re: フィールドを分けたら数字のみになる

メーカー - Left ( メーカー  ; Position ( メーカー ; " "  ; 1 ; 1 )-1)
って最初の部分は頭が自動的に無視してたけど、これが全部で計算式なんですね...
メーカーから引き算してるじゃないですか。数値演算したら結果は数字になります。

スペースが1個でその後ろを得るのは、改行に置換すればリストの2番目なので、Shinさんの計算式でできるはず。フィールド名が「テキスト」なのは、テスト用の別ファイルでやってるからなのかな?

#9 2021-04-14 21:04:36

Hiro
Member

Re: フィールドを分けたら数字のみになる

>#6 もっと wrote:

テキスト GetValue ( Substitute ( テキスト ; " " ; ¶ ) ; 1) としました。
でも、数字だけになってしまうのはかわりありませんでした。

嗚呼!!
式の構文が体をなしていませんよ!
テキストに数値演算子(-)は使えません。
この場合、FMは式を数値演算式と判断し、数値計算の数値結果を返します。

2項目の製品名を求める式は、
   GetValue(Substitute(テキスト; " "; ¶); 2)
で良いはずです。

Offline

#10 2021-04-14 21:11:11

Re: フィールドを分けたら数字のみになる

なるほど、スペースの後ろを抽出するのにマイナスをつかっています。これだと算数になるわけですね。
Shinさんの計算式でスペースを改行に変えたら、後ろの部分は2行目になります。実際のフィールド名は「メーカー」です。
中身は「あいうえお スペース abc0123]というデータです。
これが、
あいうえお
abc0123
とSubstitute関数で変わります。
でもGetValue関数で2つ目をしていしてもabc0123が抽出されません

Offline

#11 2021-04-14 21:24:16

Hiro
Member

Re: フィールドを分けたら数字のみになる

>#10『GetValue関数で2つ目をしていしてもabc0123が抽出されません』
じゃ、「あいうえお abc0123」から一体「何?」が抽出されますか?

Offline

#12 2021-04-14 21:46:13

Re: フィールドを分けたら数字のみになる

できました。失礼しました。
再度作り直したら、期待通りのスペースの前と後ろを分けることができました。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 10 queries executed - Memory usage: 523.45 KiB (Peak: 527.99 KiB) ]