「データ行の列を抽出(Extract Column in Data Row)」ステップ

フォローする

【ステップの効果】

  • CSV(Character Separated Values)ファイルで指定した範囲内にある値を抽出します。

【使用方法】

  1. 「ファイル読み込み(Load File)」ステップや「CSV形式表示(View as CSV)」を利用して、
    CSVを開きます。
    詳細は、CSVファイルを開くのナレッジをご参照下さい。

  2. 「データ行繰り返し(For Each Data Row)」ステップを利用してCSVファイルのループを作成します。
    詳細は、「データ行繰り返し(For Each Data Row)」ステップのナレッジをご参照下さい。
    ​​mceclip0.png

  3. 2で作成したステップの名前付き範囲(青枠)内で、抽出したい値を右クリックして「抽出」>抽出対象の型(種類)>変数又はタイプファイルを選択します。

    例)文字列として値を変数に設定したい場合
    「抽出」>「テキスト」>「新しいシンプルタイプの変数」>「Short Text」
    ​​

  4. ロボットを保存します。
    「データ行の列を抽出(Extract Column in Data Row)」ステップを進めます。


  5. 値が抽出されていることを確認します。

    例)mail列の名前付き範囲(青枠)内にある値が取得出来ています。

    ​​

【設定項目】

アクションタブについて

①コンバータ:抽出する値を加工/編集する時に設定します。
②変数:抽出した値を設定する変数を選択します。
③列トリガーエラーなし:CSVファイルとしてカンマ(,)区切りされていない箇所の値(空白)を
               取得しようとした場合にエラーを出力させたいのであればチェックを
                                            付けます。
 

ファインダータブについて
※基本的には作成時のままで構いません。

④コンテキスト:「データ行繰り返し(For Each Data Row)」ステップで設定された
        "名前付き範囲を選択" を設定します。
⑤列:"名前別" か "インデックスで指定" を選択します。
⑥名前パターン:⑤で "名前別" を選択した場合は、列名を設定します。
                              ※正規表現が使用できます。
 インデックス:⑤で "インデックスで指定" を選択した場合は、何列目を選択するか設定します。
 ※値(デフォルト)、変数、エクスプレッション、コンバータから設定方法を選択します。

 

【注意点】

  • 「列トリガーエラーなし」のエラーが出るパターンの例を以下に記載します。
    CSVファイルをメモ帳で開くと確認出来ます。
    各列のヘッダー(タイトル)数とデータの数が違うため、データ不全として、
    エラーを発生させるかどうかのチェックとなります。
     
    例としては、以下の①と②になります。
    もし①のデータにて、携帯番号の値を取得しようとした場合、
    「列トリガーエラーなし」にチェックがあるとエラーになります。
    ②ではエラーになりません。

    ①氏名(カナ)列にあるはずのデータがカンマ( , )が無いことにより、
     mailのデータ扱いとなってしまい、携帯番号の列にデータが存在しないことになります。
    氏名(苗字),氏名(名前),氏名(カナ),mail,携帯番号
    山根,三郎,yyyxxxxx@xx.com,123-456-789

    ②氏名(カナ)のデータがカンマ( , )で区切られているため、
     空文字として正しく入っています。
    氏名(苗字),氏名(名前),氏名(カナ),mail,携帯番号
    山根,三郎,,yyyxxxxx@xx.com,123-456-789}

    エラー内容:
    選択したイテレーションおよびブランチ内でターゲットに到達できないとき:
    データ行の列を抽出 アクションによるエラーが発生しました。CSVフォーマットエラー。
    行〇の列が未定義です。

    ​​

 

【関連情報】


※この記事は2020年11月10日にver10.4.0.2で作成したものです。
※本記事は初心者の方に分かりやすくご説明することを目的としております。
そのため、意図的に厳密な表現を避けている場合がございますのでご了承ください。

コメント

0件のコメント

記事コメントは受け付けていません。