みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になります。
チェックボックスで選択した値一覧を含むレコードをエクスポートしたのですが、
値一覧の部分の順番がレコードによって違ってしまいました。
値一覧
画像
名前
あるフィールドで、この2つの値をチックボックスによって選択します。
「画像のみ」「名前のみ」「画像と名前の両方」のいずれかを選択したことになります。
ここでレコードを書き出したとき、「画像と名前の両方」についてですが、
あるレコードでは「画像 名前」という順に書き出され、
あるレコードでは「名前 画像」という順に書き出されました。
「画像」と「名前」の順番が逆になる現象が見られ、
その原因を調べたのですが、どうしてもわかりませんでした。
値一覧では上記のように「画像」「名前」の順に登録してあります。
なぜ、レコードによって逆になることがあるのでしょうか?
一定の並び順になるように設定できるのでしょうか?
ご教示願えれば幸いです。
よろしくお願い申し上げます。
Offline
そのフィールドを編集ボックスにしたものも配置してみるとお分かりになりますが、
フィールドの値はチェックボックスのチェック順に上から改行で並びます。
Offline
チポ様
ご回答くださり、ありがとうございました。
編集ボックスにして確認したところ、エクスポートしたものと同じ順番でした。
いったん、チェックを解除して別の順番にチェックしたら、順番を変更することができました。
チェックした順番が記憶されていて、その順に並べられるということで理解しました。
ということは、値一覧の並び順通りにエクスポートするためには、
値一覧の並び順通りにチェックする必要がありそうです。
どういう順番でチェックしても値一覧と同じ並びにエクスポートするためには、
何らかのプログラムを組む必要がありますでしょうか?
(難しいでしょうからお手上げですが)
エクセルなどで修正することで並び順を変更することができそうですので、
プログラムが必要のようでしたら、エクスポートした後で修正したいと思います。
Offline
フィルター関数で正順化するのが良いでしょう。
FilterValues(ValueListItems(Get(ファイル名); "値一覧名"); チェックボックス)
【追記補足】
Values系の関数は末尾空行が強制付加されるので、不要な場合の除去結果を得る、
式例は、
Let([
#lst=FilterValues(ValueListItems(Get(ファイル名); "値一覧名"); チェックボックス)
];
Left(#lst; Length(#lst)-(Right(#lst;1)=¶))
)
Last edited by Hiro (2017-04-26 20:22:36)
Offline
今回の例なら、
FilterValues
でなくて、
Filter
でもいいのでは。
> Values系の関数は末尾空行が強制付加される
この配慮が不要になりますね。
Offline
Hiro様
チポ様
関数というとハードルが高そうですが、がんばってみます。
ありがとうございました。
Offline
Pages: 1
[ Generated in 0.009 seconds, 7 queries executed - Memory usage: 571.77 KiB (Peak: 601.52 KiB) ]