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

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

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

You are not logged in.

Announcement

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


#1 2015-02-12 09:44:07

G_young
Guest

スペース以降を散りだしたい

Webの内閣府の祝日ページから
今年の一覧をコピー・ペーストしたら Listになりましたので
タブスペースを取り除き繰返しフィールドに取り込んで
祝日の名称を除き、月日だけを表記しようと計算しましたが
祝日名称の字数によって月日だけを取得できません。

Right ( テキスト ; Position ( テキスト ; " " ; 1; 1 )  )

と、スペース以降を取得するように計算しましたが
元日 1月1日 → 1月1日
建国記念の日 2月11日 → の日 2月11日
と、マチマチの状態になります。

どうぞ、ご指導ください。
Fmp11です。

#2 2015-02-12 09:58:24

旅人
Member

Re: スペース以降を散りだしたい

FMではなくテキストエディタに貼り付けたら
元日
1月1日
成人の日
1月12日
建国記念の日
2月11日
春分の日
・・・・
になりましたけど。

Offline

#3 2015-02-12 10:35:23

G_young
Guest

Re: スペース以降を散りだしたい

旅人さま。
有難うございます。

そうですね。
LightWayTextに貼り付けしても
名称と月日は一列に並びますので
繰り返しに取り込んでも同列になり
そこで、月日だけを取得したいのです。
それとも、エディタに取り込んだ時に
名称と月日は改行した方が後の処理が簡単でしょうか。
当方の勘違いでしょうか。

よい方法があれば御指導お願いします。

#4 2015-02-12 10:38:07

mice
Guest

Re: スペース以降を散りだしたい

Rightは右から数えるのに、Positionは左から数えてるから。
空白までを削除する
Replace (  テキスト ; Position ( テキスト ; " " ; 1; 1 ) ; "" )
右から必要な分だけ取る
Right ( テキスト ; Length ( テキスト ) - Position ( テキスト ; " " ; 1; 1 )  )

#5 2015-02-12 11:12:02

G_young
Guest

Re: スペース以降を散りだしたい

miceさま。

素晴らしいです。
この絡み合った計算が出来ませんでした。
有難うございました。

続いて申し訳ありませんが
繰返しをストレートで
各レコードに仕分ける方法はありませんでしょうか?

インポートで仕分ける方法がありますが
実際に使用するのはパソコンに不慣れの人が
使うものですので…

#6 2015-02-12 12:04:52

Shin
Member

Re: スペース以降を散りだしたい

MacOS だと、
元日     1月1日
成人の日     1月12日
という、半角スペースとタブで区切られている形になったけど。

構成にもよるでしょうが、コピーしてきた物をグローバルフィールドに貼付けておいて、テキストフィールドに自動入力か全置換で設定、不要なレコードを削除、という方法がいいかも。
GetValue ( グローバルフィールド ; Get ( レコード番号 ) ) の式をテキストフィールドの自動入力に設定しておく
グローバルフィールドにテキストを貼付け、全レコードを表示、対象外のみを表示、で、対象レコードが無くなる
新規レコードを何回か行うと各レコードに各行が入る
不要な物をレコード削除

変数に設定しても良いと思います。
繰り返しフィールドに設定するのも、結構めんどうではないですか。

休日を判別するための物でしたら、カスタム関数が有ります。
http://www.fmpro.jp/fmi/xsl/plugin/cf.xsl?-skip=5
http://www.fmpro.jp/fmi/xsl/plugin/cf.xsl?-skip=1
などを利用してみられてもいいでしょう。

Offline

#7 2015-02-12 13:34:36

旅人
Member

Re: スペース以降を散りだしたい

>それとも、エディタに取り込んだ時に
>名称と月日は改行した方が後の処理が簡単でしょうか。
改行してあればインポート時に制限オプションを設定すると〇月〇日の
行だけ取り込んでそれぞれ1レコードにはなります。
用途が不明ですけど、パソコンに不慣れな人には、この方法も繰り返しも困難ですね。

Offline

#8 2015-02-12 14:28:00

scripter
Guest

Re: スペース以降を散りだしたい

エクセルで「WEBクエリ」を使うと表のまま取り込める。もっと困難かな。

しかし、

5月6日及び9月22日は休日となります

なんてのもあるので、繰り返しとか取り込みとか考えないで、最初から日付をレコードに入力した方が速いでしょう。

#9 2015-02-12 16:48:24

G_young
Guest

Re: スペース以降を散りだしたい

多くのアドバイスをありがとうございます。

取りあえず、繰返しのままで使用することにしました。

Shinさま。
旅人さま。
scripterさま。

アドバイスを時間をかけて実行してみます。
ありがとうございました。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.023 seconds, 9 queries executed - Memory usage: 520.35 KiB (Peak: 525.26 KiB) ]