元データの順番が変わってもメモを同じ項目に付ける
メモを行の位置ではなくIDとともに別表で保管し、新しい元データに結合します。
レポートを更新して行の順番が変わると、横に書いておいたメモが別の項目と並んでしまうことがあります。メモは変わらないIDと一緒に別の表で管理し、そのIDを使って更新後のデータに結合しましょう。
行番号ではなくIDにメモを保存
前回はN1、N3の順だったとします。架空のCurrent表では順番が逆になり、N4も追加されました。NoteIDはIDと同じ識別子です。ここで扱うメモはセル値であり、Excelのコメントオブジェクトではありません。
表中の∅は空欄を示す説明用の記号で、入力する文字ではありません。
Current
| ID | State |
|---|---|
| N3 | Open |
| N1 | Closed |
| N4 | Open |
Notes
| NoteID | Note |
|---|---|
| N1 | Approved |
| N3 | Call back |
新しい元表とメモ表を結び直す
- IDとメモを持つ元ファイルを別に保管し、1つのIDにつき1行にします。出力とは別に保管してください。
- 新しいCurrentとNotesを読み込みます。Currentを左に置き、IDとNoteIDを結んで「左のシートの全行を保持」を選びます。
- N3にCall back、N1にApprovedが付いたことを確認して結果を保存します。
- メモの修正は保管中のNotesファイルで行います。次回は新しいCurrentと更新したNotesを再度読み込みます。
順番が変わっても同じIDのメモ
N3が先頭へ移ってもCall backが付きます。新規のN4はメモが空欄です。対応を決めるのは行番号ではなくIDです。
| ID | State | NoteID | Note |
|---|---|---|---|
| N3 | Open | N3 | Call back |
| N1 | Closed | N1 | Approved |
| N4 | Open | ∅ | ∅ |
メモの更新はNotesファイルで行う
JOIN SHEETからメモファイルを書き換えたり、更新されたファイルを自動で読み直したりすることはできません。Notesは手元で管理し、今回の元データにないIDのメモも残しておきます。別の項目に同じIDを使い回したり、IDが重複したりすると、意図しないメモが付くおそれがあります。
自分のファイルで始めましょう
JOIN SHEETを使ってみる ↗Excel・CSVの作業はPCでご利用ください。
新しいタブで開くため、作業中のデータは置き換わりません。
サンプルの検証日:
出典
Keeping comments aligned to my Power Query table rows? (Reddit r/excel)
原文はPower Queryの更新後にメモと元の項目がずれる問題を質問しています。 上の表と手順は、この質問を参考に別途作成した架空の例です。質問者の実データや製品の利用体験ではありません。