メインコンテンツへスキップ
見出し画像

[EXCEL] 入力データには連番を付ける ~入力表の基本~

    【まとめ】
    入力表(データ表)を作成する際は、連番(通し番号)を付ける。
    データ表のみならず、複数データを入れる表には、連番を入れましょう(出席者報告、会議出席者一覧等)。


    〇連番を入れる理由
    ・全体のデータ数が分かりやすい
    ・データを特定しやすい(特に印刷時)
    *連番なら特定できる(名称は見つけづらい)。
    *画面上なら行番号でも特定できるが、連番の方が分かりやすい。
    ・並び替え(ソート)しても元に戻せる(数式から値に変えておく必要あり)

    〇連番を入れる場所
    ・連番はA列に入れる。
    ・A列は固定する(常に表示する)
    *A列以外でもデータ特定しやすい部分まで固定する(固定範囲は広く取り過ぎない)。

    〇関連記事(内容重複あり)
    [EXCEL] エクセル超基本 番号(通番)の入力方法
    [EXCEL] 番号を振る(応用編)親番/枝番/項目別の通し番号を振る
    [EXCEL] 番号付けの応用編 通番・親番・枝番を自動で入れる
    [EXCEL] 行削除しても連番が付くROW関数(失敗を踏まえて)

    【説明】
    「入力表」の作り方について順次掲載していきます。五月雨式になるかと思いますが、いずれ、マガジンで整理したいと思います。



    〇連番の付け方 

    *項目入力後に後から連番を入れる場合を想定(データを追加した場合の対応もあり)
    *テーブル化は想定していない。

    1 手入力 ⇒ フラッシュフィル

    ①手入力で「1,2」と入れる
    ②「1,2」と入れたら範囲選択
    ③「2」セルの右下にカーソルを合わせて「+」が出たらダブルクリック

    画像
    セルの右下に「+」がでたら
    ダブルクリック

    ④連番が入る

    画像

    ⑤項目が増えた場合
     手入力で番号を入れる


    *注意
    ・番号追加時に誤入力のおそれがある。
    ・行削除すると番号が飛ぶ。
    ・行挿入しても番号は入らない。挿入行以下の番号の修正が必要。

    画像
    2を削除したので飛び番となっている

    2 =上のセルの番号+1

    ①1番目には「1」を手入力
    ②2番目は =1のセル+1

    画像
    「2」は「=A2+1」となっている

    ③2番目のセルの右下にカーソルを合わせて「+」が出たらダブルクリック
    ④オートフィルで下まで数式が入る

    画像

    ⑤項目が増えた場合(一番下の場合)
    上のセルをコピー(Ctrl+D)すれば連番が入る。
    *注意
    ・行削除すると、以降の番号がエラーになる。

    画像
    2行目を削除した状態
    参照元がないので
    =REF!+1となり、
    #REF!
    リファレンスエラー
    (参照元なしエラー)
    が出ている

    ・行挿入しても番号は入らない。上のセルの数式を張り付けても、挿入行以降の番号の修正が必要。

    画像
    3の上に1行挿入
    空欄になる
    画像
    上のセルをコピーすると3になる
    下のセルをコピーすると2になる
    (2行上に1を足すから)


    3 ROW(ロウ)関数を使う

    ① 1番目に =ROW()-1 と入れる
    *「-1」の数値は項目行の数
    *ROW関数は、セルの行数を表示する(返す)関数
    ②フラッシュフィルで下まで数式が入る

    画像

    ③項目が増えた場合
    上のセルをコピー(Ctrl+D)すれば連番が入る。

    *利点
    ・行を削除しても連番になる。

    画像

    ・行を挿入しても連番になる。
    挿入行は、上のセルをコピー(Ctrl+D)すれば連番が入る。

    画像

    *注意
    ・項目を消しても、連番は消えない。

    画像

    *関連記事(重複あり)
    [EXCEL] 行削除しても連番が付くROW関数(失敗を踏まえて)


    4 SEQUENCE(シーケンス)関数 その1(非推奨)

    ①1番目のセルに以下を入れる
    =SEQUENCE(8)
    *数値は連番を作りたい数
    ②番号が入る(2以下にも自動で連番が入る)。

    画像

    ③項目が増えた場合
    =SEQUENCE(8)のカッコ内を修正する。(データ数が分からないと入れられないので面倒)

    *注意
    ・連番の数が分からないと入れられない(後でカッコ内の数値を修正することは可能)。
    ・項目数に合わせた連番を作る場合は、5参照

    5 SEQUENCE(シーケンス)関数を使う その2

    ①1番目のセルに以下を入れる

    =SEQUENCE(COUNTA(B:B)-1)
    *Bは、必ずデータが入る列を指定
    ②項目の数だけ連番が入る
    *COUNTIFでB列のデータ数を数えており、その数が連番の最後になる。
    *「COUNTA(B:B)-1」の「-1」は項目名(市町村)の数(これを引かないとデータ数と合わなくなる)

    画像

    ③項目が増えた場合
    上のセルをコピー(Ctrl+D)すれば連番が入る。

    *利点
    行削除しても行挿入しても連番になる(4に同じ)
    *注意
     項目名が空欄だと番号に齟齬が出来る。

    画像
    B4セルが空欄だが
    連番がずれて付いている


    6 COUNTA(カウンタ)関数 その1

    ①1番目のセルに以下を入れる
    =COUNTA($B$2:B2)

    画像

    ②フラッシュフィルで下まで数式が入り、連番になる。

    =COUNTA($B$2:B5) の場合
    $B$2(「$」付きの全体参照で常に固定)からB5までのデータの個数を数えて連番として表示すて(返して)いる。

    画像

    ③項目が増えた場合
    上のセルをコピー(Ctrl+D)すれば連番が入る。

    *利点
    行削除しても行挿入しても連番になる(5に同じ)
    *注意
     項目名が空欄だと番号に齟齬が出来る。

    画像
    B4セルが空欄だと
    2がダブる
    以降の通番も1少ない

    これを補うためには7とする。

    7 COUNTA(カウンタ)関数 その2

    ①1番目のセルに以下を入れる
    =IF(B2<>"",COUNTA($B$2:B2),"")
    ②オートフィルで下まで数式が入り、連番が表示される(返される)

    画像

    =IF(B5<>"",COUNTA($B$2:B5),"") の場合
    B5が空欄(””)でなければ(<>)、B2(常に固定)からB5までのデータの個数を数えて表示し、そうでなければ(B5が空欄なら)、空欄とする。

    画像

    ③項目が増えた場合
    上のセルをコピー(Ctrl+D)すれば連番が入る。

    *利点
    ・行削除しても行挿入しても連番になる
    ・B列のデータが空欄の行には連番が付かない。

    画像

    ・注意
     とりあえずなし?
    (空欄を放っておいていいかは別)

    かなりマニアックな内容かと思いますが、ご参考に。

    ★注意★並び替えをする前に

    ・連番を付けておくと、並び替え(ソート)しても、元に戻せます。連番がないと元に戻すクトが困難です(なので、ソートする前にコピーをしておくべき)。
    ・連番を付けておけば並び替えをしても元に戻せます。ただし、数式が入ったままだと、連番が変わってしまうので、正しく元に戻せません。
    ・そのため、並び替えをする前には、数式を消しておきます。具体的には・・・
    ①連番の部分を範囲指定(列指定でもいい)
    ②コピー(ctrl+C)
    ③「値のみ貼り付け」(例: Alt ⇒ E ⇒ S ⇒ V)
    ④数式が消えて、値のみとなる。
    *一度、これをやると、連番は自動では入らなくなります。
    並び替えをした後に、元に戻し、新たなデータを入れていっても連番は自動では利いません。これは課題です。
    ただし、7の方法なら、一気に簡単に連番が付けられると思います。



    〇関連記事(内容重複あり)
    [EXCEL] エクセル超基本 番号(通番)の入力方法
    [EXCEL] 番号を振る(応用編)親番/枝番/項目別の通し番号を振る
    [EXCEL] 番号付けの応用編 通番・親番・枝番を自動で入れる
    [EXCEL] 行削除しても連番が付くROW関数(失敗を踏まえて)
     


    あなたへのおすすめ