TOPCSVインポートマッピング設定(3/4) 行抽出条件
最終更新日 : 2026/02/04

設定(3/4) 行抽出条件

行抽出条件とは

読み取ったCSVファイルから抽出する行(レコード)を指定します。
Excelの論理式をベースとした書式で条件指定が設定されている場合、結果がTRUEのレコードが抽出されます。
条件指定の設定がない場合は、すべてのレコードが抽出されます。

データ種別が 伝票系(入荷予定、入荷実績、出荷指示、出荷実績、振替) の場合、元伝票番号の重複チェックも可能です。

なお、CSVファイル内の空行は(標準フォーマット取り込みと同様)無視します。

manual_mapping_tyuusyutu01.png

元伝票番号重複チェック(伝票系のみ)

manual_mapping_tyuusyutu03.png

上位システムのデータを重複することなく取り込むための設定です。
[なし][重複を除外する][重複をエラーにする]から選択します。

[重複を除外する][重複をエラーにする]では、対象期間も指定できます。読み取ったCSVファイルの元伝票番号と、在庫スイートクラウドに登録済みの比較対象伝票の元伝票番号をチェックします。

設定 重複発生時の動作
なし 重複チェックを行いません。
重複を除外する 読み取ったCSVファイルの該当伝票分を除外し、取り込みを続行します。
重複をエラーにする 読み取ったCSVファイル単位で取り込みません。

比較対象伝票は、以下の2点で決まります。
・データ種別:同じ
・対象期間:「伝票日付」が指定された範囲内(指定がなければすべて)

書式(Excel論理式ベース)

manual_mapping_tyuusyutu04.png
  • Excelの論理式をベースとした書式で、抽出したい行がTRUEになるように記載します。
  • 最初は接頭演算子の = から始めます。

  • CSV配列変数と行抽出条件に対応する演算子や関数を用いて指定します。

  • 固定文字列はダブルクォーテーション(")で囲います。

    ダブルクォーテーション自体を固定文字列内で使用する場合は二重にします。

    例)"旧社名""山田屋"""

  • 改行は無視します。

  • コメントは //から行末まで。

サンプル

例1)

// 7列目が"1"の行のみ取り込む
=CSV(7)="1"

例2)

// 12列目が"在庫管理をする"の行のみ取り込む
=CSV(12)="在庫管理をする"

例3)

// 4列目と5列目に値がセットされている行のみ取り込む
=AND(CSV(4)<>"", CSV(5)<>"")

例4)

// 4列目に値があり、かつ5列目と一致する行のみ取込
=AND(CSV(4)<>"", CSV(4)=CSV(5))

例5)

// 4,5列目に値がセットされている かつ 7列目が1か3 の行を取り込む
=AND(CSV(4)<>"", CSV(5)<>"", OR(CSV(7)="1",CSV(7)="3"))

例6)

// 2列目が"1"なら全て取り込み、
//  "1"でないなら4列目に値がセットされている行のみ取り込む
=IF(CSV(2)="1", TRUE, CSV(4)<>"")

例7)

// 4列目の先頭文字が "S" の行のみ取り込む
=LEFT(CSV(4), 1)="S"

例8)

// 3列目に"使用不可"を含まない行を取り込む
=ISERROR(FIND("使用不可",CSV(3)))

対応するExcel演算子

比較演算子

演算子 用途 使用例
= 最初の値が 2 番目の値と等しい場合に True を返します。 Value1 = Value2
<> 最初の値が 2 番目の値と等しくない場合に True を返します。 Value1 <> Value2
< 最初の値が 2 番目の値より小さい場合に True を返します。 Value1 < Value2
<= 最初の値が 2 番目の値以下の場合に True を返します。 Value1 <= Value2
> 最初の値が 2 番目の値より大きい場合に True を返します。 Value1 > Value2
>= 最初の値が 2 番目の値以上の場合に True を返します。 Value1 >= Value2

連結演算子

演算子 用途 使用例
& 2 つの文字列を組み合わせて、1 つの文字列を作成します。 string1 & string2

接頭演算子

演算子 用途
= 最初に記載し、数式や関数であること示します。

対応するExcel関数

文字列操作・変換関数

関数名 用途 構文 備考
LEFT 文字列の先頭から指定された数の文字を返します。 LEFT(文字列, 文字数) 文字数を省略した場合は1文字を返します。
RIGHT 文字列の末尾から指定された数の文字を返します。 RIGHT(文字列, 文字数) 文字数を省略した場合は1文字を返します。
MID 文字列の指定された位置から指定された文字数の文字を返します。 MID(文字列, 開始位置, 文字数) 文字数は省略不可です。
LEN 文字列の文字数を返します。 LEN(文字列)
TRIM 文字列の先頭と末尾のスペースを削除します。 TRIM(文字列) 単語間のスペースは1つ残し、不要なスペースを削除します。
UPPER 文字列に含まれる英字を大文字に変換します。 UPPER(文字列)
LOWER 文字列に含まれる英字を小文字に変換します。 LOWER(文字列)
SUBSTITUTE 指定された文字列に該当する箇所を別の文字列に置換します。 SUBSTITUTE(文字列, 検索文字列, 置換文字列, 置換対象) 置換対象は番号で指定します。省略時は該当する全ての箇所を置換します。
REPLACE 文字列の特定の部分を別の文字列に置換します。 REPLACE(文字列, 開始位置, 文字数, 置換文字列) 開始位置が文字列の長さを超える場合はエラー値(#VALUE!)を返します。
TEXT 数字や日付の値を指定された書式に変換します。 TEXT(値, 書式) ※ 値と書式が適合しない場合は変換は行われず、値をそのまま返します。TEXT関数のネストは禁止です。
TEXTJOIN 指定した区切り文字を使用して、複数の文字列を連結します。 TEXTJOIN(区切り文字, 空を無視するかどうか, 文字列1, 文字列2, ...) 第2引数にTRUEを指定した場合、空文字列は無視され、連結されません。文字列は2つ以上指定可能です。
FIND 文字列を検索し、最初に見つかった位置を返します。(大文字小文字を区別します。) FIND(検索文字列, 対象文字列, 開始位置) 開始位置を省略時は先頭から検索します。文字列が見つからなかった場合はエラー値(#VALUE!)を返します。ISNUMBER や ISERROR と組合せてご使用ください。
SEARCH 文字列を検索し、最初に見つかった位置を返します。(大文字小文字を区別しません。) SEARCH(検索文字列, 対象文字列, 開始位置) 開始位置を省略時は先頭から検索します。文字列が見つからなかった場合はエラー値(#VALUE!)を返します。ISNUMBER や ISERROR と組合せてご使用ください。

※TEXT関数の書式例

日付形式の書式 結果(例)
"yyyy年m月d日" "2025年1月1日"
"yyyy/mm/dd hh:mm:ss" "2025/01/01 17:06:43"
"yymmdd" "250101"
数値書式の書式 結果(例)
"#,##0.00" (カンマあり&小数2桁表示) "1,234,567.80"

数値・日付操作関数

関数名 用途 構文 備考
VALUE 数値を表す文字列を数値に変換します。 VALUE(文字列) 文字列を数値に変換できない場合はエラー値(#VALUE!)を返します。
DATEVALUE 日付を表す文字列を日付のシリアル値に変換します。 DATEVALUE(文字列) 日付のシリアル値を文字列("2026/01/28"など)に変換する場合は、TEXT関数を使用してください。
TODAY 現在の日付を表すシリアル値を返します。 TODAY() シリアル値とは、Excelで日時を表す数値のことです。詳細はExcelのドキュメントを参照してください。

論理関数

関数名 用途 構文 備考
IF 論理式の結果に応じて2つの値のいずれかを返します。 IF(論理式, 値が真の場合, 値が偽の場合)
AND すべての論理式がTRUEならTRUE、それ以外はFALSEを返します。 AND(論理式1, 論理式2, …) 論理式は1つ以上を指定します。
OR すべての論理式がFALSEならFALSE、それ以外はTRUEを返します。 OR(論理式1, 論理式2, …) 論理式は1つ以上を指定します。
ISERROR 値がエラーの時にTRUEを返します。 ISERROR(値) FINDやSEARCHと組合せて使用します。
ISNUMBER 値が数値の時にTRUEを返します。 ISNUMBER(値) FINDやSEARCHと組合せて使用します。

※文字数は全角・半角とも1文字でカウントします。


「設定(4/4) 項目マッピング定義」へ進む