投稿

CSVの行数と件数が合わないとき:改行を消す前に確認すること

「CSVは6行なのに、読み込むと3件しかない」。この違いだけでは、データが消えたとは判断できません。見出しも1行に数えられますし、連絡メモなどの値の中に改行が入ることもあります。 まずは、テキストの行数、CSVとして区切ったデータ件数、システムに登録できた件数を分けて確認します。次の例は説明用に作った架空の受付データです。 6行に見える受付データを数える 受付ID,担当,連絡メモ R-301,東,"午前受取 入口は北側" R-302,西,変更なし R-303,南,"箱は2個 重ね置き不可" このCSVには、受付が3件あります。R-301とR-303の連絡メモはそれぞれ2行ですが、引用符で囲まれた一つの値です。 数える対象 この例の結果 意味 テキスト上の文字がある行 6行 画面の自動折り返しは含めない 見出しを含むCSVのレコード 4件 見出し1件+受付3件 見出しを除いた受付データ 3件 R-301、R-302、R-303 6から見出しの1を引くだけでは5になり、受付件数と一致しません。値の中の2つの改行も、テキスト上では行の区切りになるためです。 RFC 4180は、改行・カンマ・引用符を含む値を二重引用符で囲む一般的なCSV形式を説明しています。ただし、全サービスに同じ動作を義務付ける規格ではありません。 RFC 4180の形式説明 Windowsで元ファイルを変更せずに数える 文字コードがUTF-8、区切りがカンマ、先頭のレコードが列名であると分かっているファイルでは、PowerShellで次のように読み込めます。パスは確認したいファイルに置き換えてください。 $records = @(Import-Csv -LiteralPath 'C:\作業\受付.csv' -Encoding utf8) $records.Count $records | Select-Object 受付ID, 担当 上の架空例なら件数は3で、IDはR-301、R-302、R-303です。このコマンドにファイルを書き換える処理はありません。 @(...) は読み取り結果を配列として受けるために付けています。Import-Csvは列名を使って各データをオブジェクトに変換します。 Microsoft公式のImp...

Excelの合計が見た目と合わないとき:表示桁数とROUNDの順序を確認する

表に見えている数字を足した結果と、SUM関数の合計が違う場合があります。小数を整数で表示している表なら、まず隠れている小数部分を確かめてください。通常のExcelは、画面に表示された整数ではなく、セルに保存されている値で計算します。 この記事では、架空の数値2件で「表示だけを丸める」「明細を丸めてから合計する」「合計後に丸める」の違いを確認します。元の値を残して、端数を処理する順序による結果の違いを比べます。 「12+18」なのに合計が31と表示される例 新しいブックで、次の内容を入力する例を考えます。A1は見出し、A2とA3は数値、A4は合計の式です。文字列や時刻のデータは使いません。 セル 入力する内容 小数1桁での表示 小数0桁での表示 A1 元の値 元の値 元の値 A2 12.4 12.4 12 A3 18.4 18.4 18 A4 =SUM(A2:A3) 30.8 31 操作名はWindows版Excelを想定しています。A2:A4を選び、Ctrl+1でセルの書式設定を開き、表示形式の「数値」で小数点以下の桁数を1と0に切り替えると、表の違いを確認できます。 この例は「表示桁数で計算する」がオフで、数式が再計算されている状態を前提にしています。既存ブックの設定や数値を変えて合わせる前に、新しいブックで試してください。 元の数値の合計は12.4+18.4=30.8です。表示を整数にすると、それぞれ12、18、31になります。見えている12と18を足した30と、合計欄の31が違っていても、この例のSUMの計算が誤っているわけではありません。 Microsoft公式:Excelの計算精度と保存値 先に、明細と合計の小数部分を確認する 実際の表では、元ファイルを残し、確認用のコピーで明細と合計の表示桁数を増やします。明細だけでなく合計も見ると、表示が丸められた場所を追いやすくなります。 直接入力した数値は、セルを選択して数式バーでも確認できます。数式が入っているセルでは数式バーに式が表示されるため、計算結果の小数部分はセルの表示桁数を増やして確認します。 通常の表示形式の変更は、見せ方を変える操作です。ROUNDで丸めた計算結果とは区別してください。 Microsoft公式:利用可能な表示形式 小数が見つからない場合は、SUMの参照範囲、数...

CSVの差分比較で「全部変わった」と出たら:行順・比較キー・重複を確認する

更新前と更新後のCSVを比較すると、ほとんどの行に差分が出ることがあります。最初に確かめたいのは、比較結果が何を基準に行を対応付けたかです。同じ行番号同士を比較していると、並べ替えだけでも大量の違いが現れます。 この記事では、架空の商品在庫CSVを使い、並び順の違いと値の変更を分けて確認します。実際の顧客情報や取引データは使っていません。 4行すべてが違って見える例 次のCSVは、1行目が列名で、その下に4件のデータがあります。商品コードは先頭ゼロを含む文字列として扱います。 変更前: 商品コード,商品名,数量 00101,方眼ノート,12 00102,角形封筒,4 00103,紙クリップ,7 00104,無地カード,2 変更後: 商品コード,商品名,数量 00104,無地カード,2 00102,角形封筒,6 00101,方眼ノート,12 00105,仕切り紙,3 同じ位置のデータ行同士を比べると、4行とも内容が違います。しかし、商品コードを目印に同じ商品同士を対応付けると、確認対象は次のように整理できます。 商品コード 確認結果 内容 00101 値の変更なし 並び位置は変わったが、商品名と数量は同じ 00102 値の変更あり 数量が4から6へ変わった 00103 変更前だけに存在 変更後のCSVには含まれていない 00104 値の変更なし 並び位置は変わったが、商品名と数量は同じ 00105 変更後だけに存在 変更前のCSVには含まれていない この例は「追加1件・削除1件・値の変更1件・値の変更なし2件」です。追加と削除は、比較した2つのファイルに含まれるかどうかを表しています。元のシステムで新規登録や削除が行われたとまでは、このCSVだけでは判断できません。抽出条件が変わった可能性も確認します。 件数を確かめるなら、変更前は「削除1+変更1+変更なし2=4件」、変更後は「追加1+変更1+変更なし2=4件」と整理できます。前後とも4件だから更新内容が同じ、とはいえません。 比較キーを選ぶ前に確かめること この例では商品コードを比較キーにしました。ただし、実際のCSVでも商品コード1列でよいとは限りません。同じ商品が倉庫ごとに1行ずつある表なら、商品コードだけでは行を特定できません。 最初に、前後のファイルが同じ対象・同じ抽出条件のもの...

CSVを提出する前に残す確認メモ:件数・変更点・未確認を短く記録する

提出したCSVについて「どこを直しましたか」と聞かれたとき、作業内容を思い出すところから始めると、確認に時間がかかります。短い確認記録を一緒に残しておけば、修正の意図と次に調べる場所を伝えやすくなります。 ここでは、架空の小さな商品一覧を例に、提出前の確認メモを作ります。法定帳簿や監査証跡の要件を定めるものではなく、日常の受け渡しのための作業例です。 「処理したこと」と「確認したこと」を分ける 空白を削除するボタンを押したことと、商品名の意図した空白だけが変わったことは別です。メモには処理の名前だけでなく、処理後に照合した項目を書きます。「整形済み」「確認OK」だけでは、別の人が確認範囲を判断できません。 受領・作業・提出のファイルを区別する 受け取った元ファイルを保管し、コピーを作業用にします。提出するファイルには日付と版を付け、メモにも同じ名前を書きます。ファイル名のルールは取引先の指定を優先してください。差し替え時には、古い提出物を黙って上書きするより、版と変更理由を記録すると追いやすくなります。 架空の記入例 対象:20260909_商品一覧_提出用_v02.csv 元データ:受領_商品一覧.csv 作業:商品名の前後空白を1セル修正 件数:データ2行 → 2行(見出しを除く) 列:商品コード・商品名・数量の3列 残したもの:商品コード00123、01230の先頭ゼロ 重複:同一文字列の行はなし 保存後:日本語・列数・数量を開き直して照合 未確認:相手先システムへの実際の取り込み 次の確認:担当者がテスト環境で取り込む この数字は説明のための架空例です。実際の作業では、処理結果から数えた値に置き換えます。CSVのセル内に改行がある場合、テキストの行数とデータ件数は一致しないことがあります。見出しを含めるかどうかも明記します。 提出前に確認する4点 対象: メモに書いたファイルと、実際に添付するファイルが同じか。 構造: 列名・列順・データ件数が想定と合うか。 意味: コード、数量、日付など、重要な値を元データと照合したか。 保存後: 画面だけでなく保存ファイルを開き直したか。提出先への取込はどこまで試したか。 同じファイルかを比べたいとき 添付やコピーの前後で同一性を確認する補助手段として、ファイルのハッシュ値を比較する方法があります。PowerShellの...

CSVの商品コード「00123」を守る:先頭ゼロが消えた場所を切り分ける

商品コード「00123」が「123」に見えるとき、元のCSVからゼロが消えたのか、開いたアプリが数値として解釈したのかを分けて確認します。慌てて上書きせず、元ファイルを残すのが最初の一手です。 まず、どこで変わったかを確認する 以下は架空の商品一覧です。商品コードは計算用の数量ではなく、照合用の識別子として扱います。 商品コード,商品名,数量 00123,ノート,2 01230,封筒,10 元のCSVをテキストエディタで開き、00123と書かれていれば、少なくとも元ファイルにはゼロが残っています。表計算で123と見えた場合は、取込時の型変換を疑います。元のCSV自体が123になっていた場合は、表示設定を変えるだけでは元の桁数は分かりません。 数量とコードを同じ「数値」にしない 数量2と10は合計できますが、00123を123へ変えると、別のコードとの区別を失う場合があります。当工房では、項目の用途を先に決める方法を勧めています。「計算する列」「照合する列」「自由記入の列」を短いメモにすると、取り込み設定を決めやすくなります。 Excelは取り込む段階で文字列として扱う Microsoftの公式案内では、先頭ゼロを残す方法として、テキスト/CSVからの取り込みで対象列をテキスト型にする方法が説明されています。単純にCSVを開く場合と取り込み操作では結果が異なることがあります。使用するExcelの版に合う手順を確認してください。 Power Queryを使う場合も、数値へ変換してゼロが落ちた後に文字列へ変えるだけでは元に戻りません。適用したステップを確認し、コードが数値へ変換される前の段階から扱いを見直します。 参考: Microsoft公式:先頭ゼロと大きな数値の保持 。この記事ではExcel実機での操作検証は行っていません。 桁を補う前に、元データと照合する 「全部5桁だからゼロを足す」と決めつけるのは避けます。コードには桁数が異なる体系が混在している場合があります。受領元の仕様に5桁固定と明記され、元の一覧と照合できる場合にだけ補正し、補正した行を記録します。 受け渡し時に残す確認メモ 商品コード列は文字列として扱う 元ファイルの00123と01230を取り込み結果で照合した 数量列は2と10のままであることを確認した 保存したCSVをテキストで開き直し、ゼロが残...

小さなデジタル販売にsysteme.ioは必要?公式機能と登録で確認した範囲

広告:この記事にはsysteme.ioのアフィリエイトリンクを含みます。 リンク先で対象の契約が成立すると、当工房が報酬を受け取る場合があります。 デジタル商品を作り始めた段階では、販売ページだけで十分なこともあります。一方、資料請求から案内メール、商品説明までをまとめたい場合は、複数の機能を持つサービスが候補になります。systeme.ioについて、2026年9月9日に確認した公式情報と、今回の登録で確認できた範囲を整理します。 検討する前に決めたい3つのこと 何を届けるか。単品のダウンロード商品、講座、継続的な情報配信では必要な機能が違います。 どの連絡先を扱うか。メールを送る相手の同意と、配信停止への対応を先に設計します。 どこまで一つにまとめたいか。既存の販売ページで足りるなら、新しい仕組みを増やす必要はありません。 公式情報で確認できる主な機能 公式サイトでは、Webサイト・販売ページの作成、メール配信、オンライン講座、アフィリエイト管理などを案内しています。無料から開始でき、開始時のクレジットカード登録は不要と表示されています。各機能の上限や有料プランは変更されるため、実際の申込画面と料金ページを確認してください。 出典: 公式料金・機能ページ 、 公式機能一覧 。 当工房の判断:機能をまとめる必要が出てから比較する 小さなツールを1本販売するだけなら、商品説明・配布ファイル・問い合わせ窓口が先です。メール配信や講座運営を使わないうちは、機能の多さだけで移行先を決めない方が管理を簡単にできます。 反対に、無料の資料を受け取った人へ、同意の範囲内で使い方を案内したい場合は、申込ページと配信をまとめられる構成に利点があります。最初は架空データと自分の宛先で、登録、受信、配信停止まで確認するのがよいでしょう。これは当工房の導入判断の提案であり、本サービスの配信性能を実証した結論ではありません。 今回確認できたこと・未確認のこと 確認済み:公式のアフィリエイト登録フォームからメールアドレスを登録し、専用の紹介リンクを受信できました。 未確認:販売ページの制作、決済、購入者への商品配布、メールの到達率、有料プランの実利用。 そのため、本記事では「使えば売上が伸びる」「メールが必ず届く」といった評価はしていません。無料枠で必要な機能を確かめ、決済手数料・外部連携・問...

CSVの重複行は消してよい?別取引を減らさない確認手順

同じ内容の行が2つあるだけでは、入力ミスとは判断できません。同じ商品を別のお客さまに販売した場合も、商品名・数量・単価は一致します。CSVの重複処理では、削除ボタンを押す前に「何を1件と数えるか」を決めることが大切です。 完全一致と、同じ取引は別の条件 商品コード,商品名,数量 0012,ノート,2 0012,ノート,2 上の2行は文字列として同一です。しかし、取引番号も日時もありません。二重入力か、別々の販売かはこのCSVだけでは確定できません。取引元の記録を確認できない場合は、行を残したまま確認対象にします。 削除を判断するための3つの材料 元のシステムが付与した取引番号・明細番号。同じ取引に複数明細がある場合は、明細番号まで見る。 CSVの出力期間。同じ期間のファイルを2回結合していないか確認する。 出力元の件数・合計金額。処理前後の差と、意図した削除件数が一致するか比べる。 取引番号が異なる行を「商品名が同じだから」という理由だけでまとめると、売上や在庫の集計が減ってしまいます。商品別の集計と、重複行の削除は分けて行います。 空白除去の順番でも結果が変わる コード,商品名 0012,ノート 0012, ノート 2行目と3行目は、元の文字列では一致しません。前後の空白を取り除いてから比較すると一致します。したがって「空白を除く」と「重複を除く」を同時に有効にすると、空白を残した場合より削除が増えることがあります。 当工房のCSV点検処理は、空白除去→空行除去→完全一致行の除去→数式候補の文字列化の順に処理します。重複除去を指定しなければ、同じ行も残します。この順番と、入力を変更しないことを自動テストで確認しています。 記録を残すための作業メモ たとえば「元データ100行、削除2行、出力98行」と記録し、削除した理由も書き添えます。件数だけ合っても削除対象が正しいとは限りません。元ファイルと取引番号による照合を残しておくと、後で説明しやすくなります。 元ファイルのコピーで作業する。 重複の定義を、対象列と確認元を含めて書く。 候補を一覧にしてから削除する。 件数・合計・代表的な取引番号を処理前後で比較する。 元ファイル、修正後ファイル、作業メモを別々に保管する。 今回の検証範囲 ここでは架空データと独自のCSV処理を使いました。実在する受注システムの重複判定を代...