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

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

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

You are not logged in.

Announcement

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


#1 2022-11-22 11:26:16

TASA123
Member

Excelからの複数にわたる自動入力について

Excelのレコードのフォルダーに A+Bと記載されているとします。
Filemakerにインポートする際にフォルダーにチェックボックスセットでA,B,C,Dの値がある場合に複数の入力を同時に入力を可能にしたいです。
AのみであればLelfWord関数を使用してチェックボックスAにチェックをつけることができますが、A,B同時に複数のレコードチェックができなくて。

どなたかご指導ください。
よろしくお願いいたします。

Offline

#2 2022-11-22 11:39:18

Shin
Member

Re: Excelからの複数にわたる自動入力について

区切り文字を改行(¶)に置き換えればいいです。

Offline

#3 2022-11-23 10:40:33

himadanee
Guest

Re: Excelからの複数にわたる自動入力について

フォルダーじゃなくセルですよね?フィールド?

インポート先のフィールドに計算値自動入力(既存値を置き換える)で
Substitute ( Self ; "+" ; ¶ )
としておけばいいってことですね。

#4 2022-11-29 16:52:44

TASA123
Member

Re: Excelからの複数にわたる自動入力について

すみません返事遅くなって。

最終的には
1-A、2-B・・・
に変換して
A,B,Cのチェックボックスにチェックが入るようにしたいですが何が間違っていますか。
これでは動きません。

フィールドの値には1+2
が入っていた場合
A、Bにチェックがつくようにしたいです。


Let([
Substitute ( Self ; "+" ; ¶)
];

Case ( Self= "1"; A" ;
Self= "2"; "B" ;
Self = "3"; "C" ;
Self= "4"; "D" ;
Self= "5"; "E" ;
Self = "6"; "F" ;
Self = "7"; "G" ;
Self = "8"; "H" ;
Self = "9"; "I" ;
Self = "10"; "J ;
Self = "11"; "K" ;
Self = "12"; "L";
)


よろしくお願いいたします。

Offline

#5 2022-11-29 18:01:26

himadanee
Guest

Re: Excelからの複数にわたる自動入力について

Letの[]の中は代入文を書かないといけません。
変数名=計算式

この場合置換した後は複数の値が改行区切りで入っているので、Caseで分岐してもだめです。
Substitueで置換します。
なので結局Letは不要で関数はSubstitueだけということになります。

#6 2022-11-29 20:12:52

Shin
Member

Re: Excelからの複数にわたる自動入力について

Substitute() でやると結構長くなるので、

While ( 
[ 
	tx0 = Substitute ( self ; "+" ; ¶ ) ;
	tx1 = "" ;
	pos = ValueCount ( tx0 ) 
] ; 
	pos ; 
[ 
	cha = GetValue ( tx0 ; pos ) ;
	tx1 = List ( Char ( Code ( "A" ) + cha - 1 ) ; tx1 ) ;
	pos = pos - 1
] ; 
	tx1 
)

それと別に、"+" を改行へ置き換えておくだけで、値一覧で処理する作例のサンプルです。表示だけでいいのでしたら、これが一番シンプルかも。
https://www.dropbox.com/s/okscc155itxtf … 2.zip?dl=0

Last edited by Shin (2022-12-05 13:24:40)

Offline

#7 2022-11-30 12:56:33

TASA123
Member

Re: Excelからの複数にわたる自動入力について

himadaneeさんありがとうございます。

Offline

#8 2022-11-30 12:57:07

TASA123
Member

Re: Excelからの複数にわたる自動入力について

Shinさん
いつもありがとうございます。
再度チャレンジしてやってみます。

Offline

#9 2022-12-01 12:28:28

TASA123
Member

Re: Excelからの複数にわたる自動入力について

Shiさん

サンプルファイルを確認しましたが、計算がよくわかりません。
<関数がわかりません>
と出ていますがWhile 関数なのですか。
またテキストを当方のフィールド名に変更するとOKサインが出ないです。

Offline

#10 2022-12-01 12:53:33

TASA123
Member

Re: Excelからの複数にわたる自動入力について

それともう一つですが、今回Excelで入力されている値からのインポートでのチェックボックスの入力の予定ですが、これであれば次Filemakerで再修正使用としても修正できないのは少し都合が悪いです。
すみませんがもう少しお願いいたします。

Offline

#11 2022-12-01 12:59:15

himadanee
Guest

Re: Excelからの複数にわたる自動入力について

While関数はFM18からですが、それ以前のバージョンですか?

#12 2022-12-01 13:08:38

TASA123
Member

Re: Excelからの複数にわたる自動入力について

そうなんですね。当方はFM17です。

Offline

#13 2022-12-01 15:31:34

チポ
Member

Re: Excelからの複数にわたる自動入力について

ベタベタですが、分かりやすく、、

Substitute ( Self ; [ "+" ; ¶ ] ; [ 12 ; "L"] ; [ 11 ; "K"] ; [ 10 ; "J"]・・・・・ ; [ 1 ; "A"]

桁数の多い順に処理しないとだめです。

Offline

#14 2022-12-01 23:40:09

Shin
Member

Re: Excelからの複数にわたる自動入力について

インポート後に修正が必要ならばサンプルファイルの様な値一覧を使うのが簡単でしょう。

Last edited by Shin (2022-12-02 00:13:20)

Offline

#15 2022-12-02 11:48:50

TASA123
Member

Re: Excelからの複数にわたる自動入力について

Shinさん サンプルファイルにあるWhile関数は使用しなくても値一覧を作成すれば大丈夫なのでしょうか。

Offline

#16 2022-12-02 13:29:19

Shin
Member

Re: Excelからの複数にわたる自動入力について

値一覧の方は、while 関数と別方法です。while 関数が使えなくても、動いているでしょ。

Offline

#17 2022-12-02 17:21:09

TASA123
Member

Re: Excelからの複数にわたる自動入力について

Shinさん
ありがとうございます。
これがないと動かないと勘違いしておりました。
申し訳ございません。

Offline

#18 2022-12-02 17:45:24

TASA123
Member

Re: Excelからの複数にわたる自動入力について

チポさん
ありがとうございます。
とても参考になりました。
ただ最終的にA-Lのあとに文字列が並ぶ予定ですがその文字列に数字が入ると変換されてしまいますよね。
例えば以下のような計算式を挿入すると
Substitute ( Trim ( RomanHankaku ( Self ) ) ; ["+"; ¶] ;
[12; "12:L" ];
[11; "11:K" ];
[10; "10:J" ];
[9; "9:I"];
[8; "8:H" ];
[7; "7:G" ];
[6; "6:F" ];
[5; "5:E" ];
[4; "4:D" ];
[3; "3:C"];
[2; "2:B" ];
[1; "1:A"]
)


6+10

6:F
1:A0:J

になってしまいますよね。

Offline

#19 2022-12-02 18:04:43

Shin
Member

Re: Excelからの複数にわたる自動入力について

最初の質問と内容が全然違いますよ。
また、「最終的にA-Lのあとに文字列が並ぶ」「Substitute ( ... ; [12; "12:L" ]; ...」という説明も矛盾しています。

Offline

#20 2022-12-03 07:37:03

himadanee
Guest

Re: Excelからの複数にわたる自動入力について

最初の質問ではExcelで「A+B」だったのが、途中から「1+2」を「AとBにチェック」に変わって、最後には「1+2」を「1:Aと2:B」に変換しようとしてますが、何をしたいんでしょうか。
FMでの質問なのでExcelのデータは既にあって変更できないと思ってましたけど、A+Bで入れてるのか1+2で入れてるのか、どっちなんですか?
これからデータを作るのでどっちでもできるなら、無駄に変換が必要ないようにExcel側の入力方法から考えた方がいいでしょう。

ちゃんと実際にやりたいことを説明しないと、無駄なやり取りばかり増えていつまでたっても解決しませんよ。

#21 2022-12-05 12:52:37

TASA123
Member

Re: Excelからの複数にわたる自動入力について

そうでしたね。説明不足ですみませんでした。

Excelから変換する値が、1-12の数値で並んでいて、その内容が1:文字列A 2:文字列B...です。
それをFilemakerでは最初は文字列(A.B.C...)でしたが、後日上司からExcelと関連を持たすため、検索しやすくするためにレコードが1:文字列A 2:文字列B...にできないかと言われました。
またExcelでは内容が1+10、1+Zなど入っているため(Zとは今回の値一覧以外の値)うまく連携をできるようにしたいため最初の内容から徐々に変更点が加わっています。

本当に申し訳ございません。

Offline

#22 2022-12-05 13:00:31

TASA123
Member

Re: Excelからの複数にわたる自動入力について

数と文字列では計算式が変わるとは知りませんでした。
そのため最初は例としてA+B+Cとしておりましたが、実際は1+2+3です。
またExcelは入力の統一性がなく半角、全角ごちゃまぜです。
そのため、いろいろ試行錯誤しても自動変換されない状態で悩んでいます。

Offline

#23 2022-12-05 13:12:32

チポ
Member

Re: Excelからの複数にわたる自動入力について

最初からその説明がよかったですね。。

> Excelは入力の統一性がなく半角、全角ごちゃまぜです
これは、FMですべて半角にできます。

別テーブルで、数値と対応するテキストの組み合わせのレコードを作って、
リレーションで持ってくればいいのでは。

Offline

#24 2022-12-05 13:24:27

Shin
Member

Re: Excelからの複数にわたる自動入力について

> Excelと関連を持たすため、検索しやすくするためにレコードが1:文字列A 2:文字列B...にできないか
FM側で、文字列の部分一致で検索することはありますか。
なければ、サンプルの値一覧の設定を変更するだけでいいです。
https://www.dropbox.com/s/okscc155itxtf … 2.zip?dl=0

Offline

#25 2022-12-05 13:33:47

TASA123
Member

Re: Excelからの複数にわたる自動入力について

基本的にはないです。
部署のExcelユーザーがFilemakerの操作をする際に1:文字列A  2:文字列B...を記憶しているためもし検索する際にレコード内に1を入れたら検索できるようにしたいと思います。
ただ1で検索すると10,11、12も引っかかるので完全一致にしないといけませんが。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 612.9 KiB (Peak: 629.8 KiB) ]