(現在 過去ログ63 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■9807 / inTopicNo.1)  絞り込み(グループ)
  
□投稿者/ 一太郎 -(2016/05/06(Fri) 16:16:22)
    2016/05/06(Fri) 16:40:58 編集(投稿者)

    [項目A]の"アルファベット(先頭)"〜"ブランク"までを、それぞれ絞り込んで[項目B]を作りたいのですが、ご教授をお願いいたします。
    一括処理:グループ毎に、「絞り込み」→「補集合」→「絞り込み」→「補集合」を繰り返したい。
    ※[項目B]は参考(グループ)のための項目で実際はありません。


    [項目A]  [項目B]
    "aaa"     "aaa"
    "ミカン"   "aaa"
    "バナナ"   "aaa"
    "りんご"   "aaa"
    "すいか"   "aaa"
    ""      "aaa"
    "bbb"     "bbb"
    "いちご"   "bbb"
    "とまと"   "bbb"
    "ミカン"   "bbb"
    "りんご"   "bbb"
    "メロン"   "bbb"
    ""      "bbb"
    "ccc"
    "いちご"   "ccc"
    ""      "ccc"
    "ddd"     "ddd"
    "すいか"   "ddd"
    "いちご"   "ddd"
    "レモン"   "ddd"
    ""      "ddd"



引用返信 [メール受信/OFF] 削除キー/
■9808 / inTopicNo.2)  Re[1]: 絞り込み
□投稿者/ まさやん -(2016/05/06(Fri) 16:40:34)
    2016/05/06(Fri) 16:50:27 編集(投稿者)

    > 一括処理:グループ毎に、「絞り込み」→「補集合」→「絞り込み」→「補集合」を繰り返したい。

    というより 

    #条件選択で 分けていったらどうでしょう


    項目A が  全部 半角なら &データに[項目A] そして 行訂正 [項目A]=&データ

    そうでなければ 項目B に 行訂正 [項目B]=&データ


    すみません 時間がないので サンプルは後でアップしますが

    繰り返し コマンドで 
    その中の 仕事を 上記のようにして

    終端行 まで 繰り返す

    みたいのでは?

    追伸
    条件選択よりも この場合
    ケースでわけて仕事した方がいいでしょう。

    > [項目A]  [項目B]
    > "aaa"     "aaa"
    > "ミカン"   "aaa"
    > "バナナ"   "aaa"
    > "りんご"   "aaa"
    > "すいか"   "aaa"
    > ""      "aaa"
    > "bbb"     "bbb"
    > "いちご"   "bbb"
    > "とまと"   "bbb"
    > "ミカン"   "bbb"
    > "りんご"   "bbb"
    > "メロン"   "bbb"
    > ""      "bbb"
    > "ccc"
    > "いちご"   "ccc"
    > ""      "ccc"
    > "ddd"     "ddd"
    > "すいか"   "ddd"
    > "いちご"   "ddd"
    > "レモン"   "ddd"
    > ""      "ddd"
    >
    >
    >
引用返信 [メール受信/OFF] 削除キー/
■9809 / inTopicNo.3)  Re[2]: 絞り込み
□投稿者/ まさやん -(2016/05/06(Fri) 19:19:28)
    2016/05/06(Fri) 19:47:11 編集(投稿者)


    サンプルをアップします
    ただ単純に 例を見て 区切り文字が 半角の場合です

    他の場合は
    aaa とか bbb と
    りんご すいか ミカン などのデータと違う点を見つけて
    区別するといいでしょう。

    関数も色々あるので  #IS半角 や #IS英字 など 参考にしてみてください。

    区切り文字のデータが 区別つかないような文字だとまた別な方法かとおもいます。

    いつものように
    サンプルには 拡張子 CMD が入っています。
    グーグルクロームでは 確認がでるとおもいます。

    遅延 コマンドは  見やすくするためです実際には要らないでしょう。

1462529968.zip
/7KB
引用返信 [メール受信/OFF] 削除キー/
■9810 / inTopicNo.4)  Re[1]: 絞り込み(グループ)
□投稿者/ 鳴瀬 -(2016/05/06(Fri) 20:33:47)
    > ※[項目B]は参考(グループ)のための項目で実際はありません。
    私見ですが,[項目B]があるとしたら
    #COND(#直前値([項目A],#U)=#U,[項目A],1,#直前値([項目B],#U))
    で置換処理します。
引用返信 [メール受信/OFF] 削除キー/
■9811 / inTopicNo.5)  Re[3]: 絞り込み
□投稿者/ 一太郎 -(2016/05/06(Fri) 21:25:02)
    まさやんさん

    ご回答ありがとうございます。

    > サンプルをアップします
    > ただ単純に 例を見て 区切り文字が 半角の場合です
    例とは違ったのですが、今回は区切り文字以外も全て半角です。
    今更、例が違うことにつきまして申し訳ございません。
    [項目A]の"先頭"〜"ブランク"までを一つのグループにすることが希望でした。
    > 区切り文字のデータが 区別つかないような文字だとまた別な方法かとおもいます。
    鳴瀬さんの置換処理が求めているものでした。
    しかしながら、サンプルデータ勉強になりました。

    ありがとうございました。
引用返信 [メール受信/OFF] 削除キー/
■9812 / inTopicNo.6)  Re[2]: 絞り込み(グループ)
□投稿者/ 一太郎 -(2016/05/06(Fri) 21:39:04)
    鳴瀬さん

    下記ご回答で解決いたしました。
    > #COND(#直前値([項目A],#U)=#U,[項目A],1,#直前値([項目B],#U))
    > で置換処理します。
    初めて知りました。一括処理を使わなくても、[項目A]の直前値が未定義の場合#Uで置換えが出来るんですね。

    桐関数はいたれり、つくせりですね。

    ありがとうございました。

引用返信 [メール受信/OFF] 削除キー/
■9813 / inTopicNo.7)  絞り込み(グループ)追加質問
□投稿者/ 一太郎 -(2016/05/06(Fri) 21:54:54)
    追加で質問があります。

    [項目B]のグループ毎で[項目C]に連番(#直前値([],-1)+1)を付与したい。
    よろしくお願いいたします。

    [項目A]  [項目B]  [項目C]
    "aaa"     "aaa"   0
    "ミカン"   "aaa"   1
    "バナナ"   "aaa"   2
    "りんご"   "aaa"   3
    "すいか"   "aaa"   4
    ""      "aaa"   5
    "bbb"     "bbb"   0
    "いちご"   "bbb"   1
    "とまと"   "bbb"   2
    "ミカン"   "bbb"   3
    "りんご"   "bbb"   4
    "メロン"   "bbb"   5
    ""      "bbb"   6
    "ccc"     "ccc"   0
    "いちご"   "ccc"   1
    ""      "ccc"   2
    "ddd"     "ddd"   0
    "すいか"   "ddd"   1
    "いちご"   "ddd"   2
    "レモン"   "ddd"   3
    ""      "ddd"   4

引用返信 [メール受信/OFF] 削除キー/
■9814 / inTopicNo.8)  Re[2]: 絞り込み(グループ)追加質問
□投稿者/ まさやん -(2016/05/07(Sat) 04:51:27)
    2016/05/07(Sat) 04:54:53 編集(投稿者)
    2016/05/07(Sat) 04:54:08 編集(投稿者)

    鳴瀬さんの置換 私も勉強になりました。なるほどです。

    追加質問で 連番を付けたいとのこと。

    最大の ヒントをいただいているので応用して試してみるのもいいでしょう。
    同じ考えだと思います。

    そして どうしてもならない時に 質問するのもよいでしょう。

    (一太郎さん ヒント参考に試して見て。自分で出来ると感動ですよ。)
引用返信 [メール受信/OFF] 削除キー/
■9815 / inTopicNo.9)  Re[3]: 絞り込み(グループ)追加質問
□投稿者/ 一太郎 -(2016/05/07(Sat) 09:46:00)
    2016/05/07(Sat) 11:23:29 編集(投稿者)

    まさやんさん

    > そして どうしてもならない時に 質問するのもよいでしょう。
    >
    > (一太郎さん ヒント参考に試して見て。自分で出来ると感動ですよ。)
    数値: #COND(#直前値([項目A],#U)=#U,[項目A],1,#直前値([項目C],-1)+1)

    上記でエラー:「KD1620:式の結果が代入または変換できないデータ型です」が出ます。
    おそらく、[項目A]が文字列なのが原因でしょうか。数値にするとグループにならないようです。

    #条件選択([項目B]=#直前値([項目B],[項目B]),#直前値([],0)+1,1,1)
    上記では、何とかいけました。
引用返信 [メール受信/OFF] 削除キー/
■9816 / inTopicNo.10)  Re[4]: 絞り込み(グループ)追加質問
□投稿者/ 鳴瀬 -(2016/05/07(Sat) 15:21:01)
    > #条件選択([項目B]=#直前値([項目B],[項目B]),#直前値([],0)+1,1,1)
    素直に#順位を使うのが一般的かと。
    #計算(#順位([項目B],[項目[A]),[]-1)
    [項目C]の値が各グループで 0 からスタートなので上記の置換式にしましたが
    1 からでよいのなら単純に
    #順位([項目B],[項目A])
    でよいですね。
    もし,グループ内で[項目A]の値が重複するものが存在するようなデータならば別途,整数型項目を作り,#連番で置換しておきます。上記の[項目A]の代わりにこの項目を指定すればよいです,
引用返信 [メール受信/OFF] 削除キー/
■9817 / inTopicNo.11)  Re[5]: 絞り込み(グループ)追加質問
□投稿者/ 鳴瀬 -(2016/05/07(Sat) 15:32:14)
    あ,#連番で置換しておくというのは各レコードを一意に識別するためのもので,連番でなくてもよいのですが,これが一番簡単かと,,,
引用返信 [メール受信/OFF] 削除キー/
■9818 / inTopicNo.12)  Re[6]: 絞り込み(グループ)追加質問
□投稿者/ 一太郎 -(2016/05/07(Sat) 17:30:10)
    2016/05/08(Sun) 14:49:54 編集(投稿者)

    鳴瀬さん

    ご指導ありがとうございます。

    項目計算式では、#連番 #順位 の関数は利用できないのですね。

    > #順位([項目B],[項目A])
    > #計算(#順位([項目B],[項目[A]),[]-1)
    上記は一括処理ですね。

    > #条件選択([項目B]=#直前値([項目B],[項目B]),#直前値([],0)+1,1,1)
    上記は項目計算式で利用できました。

    まさやん、鳴瀬さん ありがとうございました。
解決済み!
引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -