出荷前に、品番と数量を確認していました。
管理表の品番。
出荷リストの品番。
画面では同じに見えます。
VLOOKUPも組んでいました。
でも、なぜか1件だけ一致しない。
セルをクリックしても、
何が違うのか分からない。
隣の人にも見てもらいました。
「同じに見えるけどね」
そう言われて、
もう一度コピーして貼り直しました。
それでも合わない。
最後に数式バーを見たら、
品番の後ろに空白が1文字だけ入っていました。
見た目は同じ。
でもExcel上では別物でした。
こういうこと、現場では普通にあります。
品番は同じに見えるのに一致しない。
ロット番号の後ろに空白が入っている。
VLOOKUPで「#N/A」になる理由が分からない。
重複削除したのに、同じデータが残る。
確認していないわけではありません。
何回も見ています。
それでも、空白1文字は見つけにくいです。
件数が少なければ、
目で見た方が早い場面もあります。
VLOOKUPも便利です。
関数で十分な作業もあります。
ただ、件数が増えたとき。
品番、ロット番号、数量、出荷先、日付。
人の目だけで、
空白1文字まで拾うのはかなりきつくなります。
以前、検査成績書と管理表を照合していたときも、
同じようなことがありました。
検査成績書のロット番号は合っている。
管理表のロット番号も合っている。
でも照合結果は不一致。
印刷した紙に線を引いて、
1文字ずつ追いました。
数字は合っている。
ハイフンも合っている。
日付も合っている。
最後にセルをコピーして、
別の場所に貼り付けてみました。
後ろに空白がありました。
画面では見えません。
印刷しても見えません。
でも、照合ではズレます。
担当者を変えても、
同じ確認方法のままだと、
また似たミスが残ります。
見るべきだったのは、
人の注意力だけではなく、
"確認の流れ"でした。
空白が入っていないか。
同じに見える文字が、
本当に同じ扱いになっているか。
照合前に、
Excel側で見つけやすくしておく。
それだけで、
確認の負担はかなり変わります。
仮に、
空白や表記ゆれの確認に1日30分かかっていたら。
月20日で約10時間。
1年で約120時間です。
毎回大きなトラブルになるわけではありません。
でも、
「また合わない」
「どこが違う?」
「たぶん空白だと思う」
この確認が積み重なると、
地味に時間を持っていかれます。
私も品質管理の現場で10年以上、
検査成績書や管理表、ロット番号の確認をしてきました。
数百万件以上のデータを扱う中で、
Excel VBAで確認作業を仕組みに変えてきました。
累計で1000万円以上の改善効果につながったものもあります。
ただ、最初から大きな仕組みを作ったわけではありません。
最初は、
「見えない空白を見つけたい」
くらいの小さな確認からでした。
ここから先は、
試したい方だけ使えるシンプル版の無料コードです。
VBAに慣れていない方は、
読むだけでも大丈夫です。
考え方としては、
「同じに見えるか」
ではなく、
「Excelに違いを色で出してもらう」
という形です。
この無料コードは、
A列に管理表のデータ、
B列に出荷リストのデータがあり、
同じ行同士を比較する前提のシンプル版です。
実行前に、
必ずファイルのバックアップを取ってください。
元データに色を付けるため、
本番ファイルでいきなり試さないでください。
無料公開コード
Sub 空白1文字チェック_簡易版()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim leftValue As String
Dim rightValue As String
Dim leftTrim As String
Dim rightTrim As String
Set ws = ActiveSheet
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
' 色をリセット
ws.Range("A2:B" & lastRow).Interior.ColorIndex = xlNone
For i = 2 To lastRow
leftValue = ws.Cells(i, "A").Value
rightValue = ws.Cells(i, "B").Value
' 前後の半角スペースを除いた値
leftTrim = Trim(leftValue)
rightTrim = Trim(rightValue)
' 完全一致しない場合
If leftValue <> rightValue Then
' 前後の半角スペースを除くと一致する場合
If leftTrim = rightTrim Then
ws.Cells(i, "A").Interior.Color = RGB(255, 255, 0)
ws.Cells(i, "B").Interior.Color = RGB(255, 255, 0)
' 空白を除いても一致しない場合
Else
ws.Cells(i, "A").Interior.Color = RGB(255, 120, 120)
ws.Cells(i, "B").Interior.Color = RGB(255, 120, 120)
End If
End If
Next i
MsgBox "確認が完了しました。黄色は前後の空白違いの可能性、赤色は不一致です。"
End Sub
使い方はシンプルです。
A列に管理表の品番やロット番号を入れます。
B列に出荷リストの品番やロット番号を入れます。
1行目は見出しにします。
2行目からデータを入れます。
Excelで「Alt + F11」を押します。
標準モジュールにコードを貼り付けます。
ファイルをバックアップしてから実行します。
黄色になった行は、
前後の半角スペースが原因でズレている可能性があります。
赤色になった行は、
空白を除いても値が違う行です。
ただし、この無料コードは簡易版です。
同じ行同士を比べる前提です。
列の位置も固定です。
全角スペースの確認や、
複数列の照合、
別ファイル同士の比較、
ファイルを選んで比較する操作までは入れていません。
毎月同じ照合作業がある場合は、
そのたびにコードを貼ったり、
列を整えたりするのが手間になることもあります。
毎回コードを触らなくても使えるようにした完成版も置いています。
【完成版商品リンク】
2つのExcelデータを比較して、
不一致箇所を赤色で見つけやすくするためのツールです。
検査成績書と管理表。
出荷リストと管理表。
ロット番号一覧と出荷データ。
こういった確認作業で、
「どこが違うのか探す時間」
を減らすために作っています。
ツールは確認作業を補助するものです。
最終確認をなくすものではありません。
ただ、
最初から人の目だけで全部見るより、
違いを色で出してから確認した方が、
作業はかなり落ち着きます。
使い方はマニュアルにまとめています。
個別カスタマイズは受けていません。
その代わり、
よくある照合作業に使える完成品として、
低価格で置いています。
Q:VBA未経験でも使えますか?
A:完成版はボタン操作で使える形にしています。図解マニュアルも付けています。VBAコードを書けない方でも使いやすい形にしています。
Q:個別カスタマイズはできますか?
A:低価格維持のため、個別カスタマイズやオーダーメイドは受けていません。汎用的に使える完成品として、そのまま使える形にしています。
Q:Macでも使えますか?
A:Windows版Excel専用です。Mac版Excel、スマホ、Googleスプレッドシートは対象外です。
こんな方に向いています。
✓ 空白1文字や表記ゆれで確認が止まる方
✓ 検査成績書と管理表の照合に時間を取られている方
✓ 毎月同じ出荷前確認を繰り返している方
✓ VLOOKUPの不一致原因を探すのに疲れている方
照合だけでなく、
重複削除やファイル結合までまとめて使いたい方向けに、
3点パックも用意しています。
ただし、
まずは必要な単品からで十分です。
空白1文字で照合が止まる。
見た目は同じなのに一致しない。
VLOOKUPで原因不明の不一致が出る。
こういう確認は、
人の集中力だけで追い続けるには負担が大きいです。
毎月同じ確認作業がある方は、
完成版も置いています。
必要な方だけ見てください。
購入前に不安な方へ
このExcelツールは、Windows版Excel向けです。
Mac、スマホ、Googleスプレッドシートでは想定通りに動かない可能性があります。
また、会社のパソコンでマクロ付きExcelの使用が禁止されている場合は、購入前に社内ルールをご確認ください。
無理に会社のパソコンへ入れる必要はありません。
まずは個人のパソコンや、使用許可のある環境で試していただく形でも大丈夫です。
マクロやVBAに詳しくなくても、基本的にはボタン操作で使えるようにしています。
会社の実データや機密情報をこちらに送っていただく必要もありません。
ココナラへの登録は、通常数分程度で終わります。
一度登録しておけば、購入履歴やメッセージのやり取りも残るので、あとから商品を確認しやすいです。
不安な方は、まずnote内の無料コードだけ試していただいて大丈夫です。
無料版で物足りないと感じた方だけ、完成版をご検討ください。
【商品ページはこちら】
【動作の様子】