メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

Excelで数列を繰り返す方法:ステップバイステップガイド

Author Xiaoyang Last modified

Excelで数列(例:1、2、3、4、1、2、3、4)を繰り返すことは、データの整理、構造化されたパターンの作成、反復タスクの自動化に非常に役立ちます。小規模なデータセットでも大規模な表でも、Excelには数列を簡単に繰り返すための効率的な方法がいくつか用意されています。この記事では、スプレッドシートで繰り返しパターンを作成するための実践的な方法をいくつか説明し、それぞれの使用に最適なシナリオ、利点、および制限についても詳しく解説します。また、組み込みのExcel機能とVBAコードを使用したカスタム数列の繰り返し方法についても紹介します。


フィルハンドルを使って数列を繰り返す

フィルハンドルは、Excelの最も直感的なツールの一つで、パターンの作成や数列の繰り返しに使用できます。これにより、ユーザーは数回のクリックで再帰的な値を複製でき、比較的短いまたは視覚的に管理可能な数列に特に適しています。この方法は、複雑な数式を使わずに繰り返しリストを迅速に作成したり、データ入力やテンプレートのパターンを示す場合に特に便利です。

  1. 繰り返したい数列をいくつかのセルに入力します。例えば、A1からA4のセルに「1、2、3、4」と入力します。
  2. 数列が含まれているセルを選択します。マウスカーソルを選択範囲の右下隅(小さな四角形)に移動させると、小さな黒い十字に変わります。
  3. 次に、「 Ctrl 」キーを押しながら、フィルハンドルを下(または横)にドラッグして、さらに多くのセルを埋めます。これにより、追加設定なしで選択したパターンがシームレスに繰り返されます。
    Repeat number sequence with Fill Handle

適用可能なシナリオ: フィルハンドルは、短いパターンを素早く一度限りで設定するのに最適です。特に、数列を数回だけ繰り返す必要がある場合や、データを対話形式で視覚的に扱う場合に実用的です。

制限事項: 大規模なデータセットや、自動化された数式ベースのアプローチが必要な場合、フィルハンドルの手動操作は効率が悪くなり、長すぎるリストで不整合やエラーを引き起こす可能性があります。

注意: フィルハンドルが期待通りに数列を繰り返さない場合は、ドラッグ中に「Ctrl」キーを押していることを確認してください。また、初期選択が正しく繰り返しパターンを定義しているかも確認してください。

MOD関数を使って数列を繰り返す

Repeat number sequence with MOD fucntion

MOD関数は、再帰的な数列を作成するための柔軟な方法であり、特に大規模なデータセットで自動的に繰り返しを行う場合に有益です。この関数を使うと、数式に基づいた正確な繰り返しが可能で、長さ、パターン、開始点を簡単に調整できます。このアプローチは、1、2、3、4のような一貫した段階的な数列を列に沿って繰り返す場合に特に適しています。

数列を挿入したい空白セルに以下の数式を入力またはコピーし、数式を下方向にドラッグして列に数列を埋めます。スクリーンショットをご覧ください:

=MOD(ROW()-1,4)+1
ヒント: 数字の「4」を目的の繰り返し数列のサイズに置き換えてください。例えば、1から6までの数列を繰り返したい場合は、「6」を使用します。「4」の代わりに調整してください。希望するパターンの長さに応じてこのパラメータを調整します。
この数式の説明:
  • ROW()-1は、1行目から始まり、0からカウントを開始します(Excelの1行目から1を引くと0になります)。
  • MOD(...,4)は、4行ごとにカウントを「0」に戻し、4つの値ごとに数列を繰り返します。
  • +1は、0基準の結果をシフトし、数列が0ではなく1から始まるようにします(0~3ではなく1~4を生成します)。
この数式の制限事項:
  1. この数式は、線形の数字(例:1~4)を繰り返すのに理想的ですが、非線形、カスタム、またはテキストベースの数列(例:数字をスキップしたり、文字と数字を混ぜるなど)には直接対応できません。
  2. 数列が1行目から始まらない場合は、数式を調整する必要があります(例:ROW()-1をROW()-xに変更し、xを開始番号に合わせる)ので、意図したパターンが揃うようにしてください。
  3. 数列は、数式をコピーした範囲まで繰り返されます。固定回数の繰り返しや特定の値で停止したい場合は、コピー範囲を手動で制限するか、追加のコントロールを追加する必要があります。

強力な機能を使って数値またはテキスト列を繰り返す

Excelで数値やテキスト列を繰り返すのは、特に大規模なデータセットや標準ではないパターンを扱っている場合には面倒な作業になることがあります。MODやSEQUENCEなどの数式は有効ですが、時間のかかるものであり、専門的な数式の理解が必要です。そこで、Kutools for Excelがそのプロセスを簡素化します。使いやすいインターフェースを持つKutoolsを使用すると、数式やVBAコードを書くことなく、数値やテキスト列(線形でもカスタマイズ型でも)をわずか数ステップで繰り返すことができ、広範囲のデータ範囲に対して最大限の効率を得ることができます。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

Kutools for Excelをインストール後、次の手順に従ってください:

  1. 繰り返しの数列を挿入したい列またはセル範囲を選択します。開始セルや列に制約はありません。
  2. 次に、Kutools > 挿入 > シーケンス番号の挿入 をクリックします。スクリーンショットをご覧ください:
    click Insert Sequence Number feature of kutools
  3. ダイアログボックスで、塗りつぶし順序を指定し、「新規」ボタンをクリックしてカスタム数列を作成します。
     click New button to create a custom sequence
  4. 次のダイアログボックスで、必要な数列を設定します:
    • カスタム数列リストの名前を入力します。これにより、将来の管理や再利用が簡単になります。
    • 開始番号、終了番号、増分、桁数を指定して、繰り返される数値を完全にカスタマイズします。
    • さらに構造を持たせるために、接頭辞や接尾辞を定義することもできます(例:「Q1-」、「SFX」など)。
    • 設定を保存するために「OK」をクリックします。
       configure the number sequence in the dialog box
  5. 前のダイアログボックスに戻ったら、「OK」または「適用」をクリックします。指定されたパターンが選択範囲に即座に反映され、確認前にプレビューを見ることができます。イラストをご覧ください:
     fill the sequence number with kutools

ヒントと注意点: Kutoolsでは、数値およびテキストの数列を生成でき、繰り返し間隔を制御し、結合された範囲や不連続な選択範囲を簡単に処理できます。

使用するタイミング: 単純および複雑な繰り返しパターン(数値とテキストの組み合わせを含む)をカスタマイズしたい場合、大量のデータを確実に繰り返したい場合、または数式やコードを作成せずに数列の挿入を自動化したい場合に最適です。

制限事項: Kutoolsは追加インストールが必要ですが、頻繁に大規模または独自のパターンを持つ数列を操作するユーザーにとって、大幅な柔軟性を提供します。


SEQUENCE関数を使って数列を繰り返す(Excel 365/Excel 2021)

最新バージョンのExcel(Excel 365またはExcel 2021)を使用している場合、SEQUENCE関数は列や行全体にわたってパターンを簡単に作成できる動的配列機能を導入しました。これは特に、基本的な数値の繰り返し数列を大規模な範囲に瞬時に埋める場合に効果的です。

 configure the number sequence in the dialog box

数列を挿入したい空白セル(例:A1)に次の数式を入力またはコピーし、Enterを押します。Excelは指定された行数に自動的に数列を展開します:

=MOD(SEQUENCE(20,1,0),4)+1
この数式の説明:
  • SEQUENCE(20,1,0): 縦方向に0から19までの数列を生成します(合計20行)。
  • MOD(...,4): 各結果を4で割り、余りを返すことでループ効果を生み出します。
  • =MOD(SEQUENCE(20,1,0),4)+1: 数列をシフトし、1から4の間で数値を繰り返します。異なる数列の長さや繰り返し範囲に応じて「20」と「4」を調整します。

より長いまたは短い繰り返し数列が必要な場合は、SEQUENCE内の「20」を調整します。異なる範囲を繰り返したい場合(例:1から7)、新しい範囲のサイズに応じて「4」を変更します。

この数式の制限事項:
  1. Excel 365 / 2021でのみ動作: 以前のバージョンのExcelでは、SEQUENCEや動的配列の動作はサポートされていません。
  2. 数値出力のみ: この数式は数値用に設計されています。カスタムテキストや混合値の数列を繰り返したい場合は、以下に記載されているINDEX式の解決策を参照してください。
  3. 線形パターンのみ: この数式が生成するパターンは常に順序立てられたものです。非標準、不規則、またはカスタムパターンの繰り返しには別のアプローチ(例:INDEX式)が必要です。

INDEX式を使ってカスタム数列を繰り返す(テキストまたはカスタム順に対応)

ExcelのINDEX関数は、カスタム数列を繰り返す際に大きな柔軟性を提供します。数値だけでなく、テキストやユーザー定義の順序もサポートします。均等にステップ化された数値パターンに限定されるMOD式とは異なり、INDEX式は内容や順序に関係なく任意のリストを繰り返すことができるため、混合、非線形、またはテキストベースの数列に最適なソリューションです。

このアプローチは、1、5、9のような非標準パターンや、A、B、Cや混合値のようなカスタムテキストラベルを繰り返す必要がある場合に特に価値があります。

1. 空白セル(例:B1)に、以下のようにデータセット内にA、B、Cのようなテキスト数列を繰り返す数式を入力します:

=INDEX({"A","B","C"},MOD(ROW()-1,3)+1)

2. 数式を確定するためにEnterを押してから、パターンを追加の行に適用するためにフィルハンドルを下にドラッグします。

仕組み: 配列{"A","B","C"}はカスタム数列を保持しており、これらは数値、テキスト、または必要な任意の値にすることができます。MOD(ROW()-1,3)+1は配列を循環させ、数式を下にコピーするとインデックス番号が繰り返され、それによって数列が再び現れます。

カスタマイズ: 別のパターン(例:{5, 10, 15, 20})を使用する場合は、配列を調整します:

=INDEX({5,10,15,20},MOD(ROW()-1,4)+1)

ヒント: 数列が範囲セル(D1:D3など)に格納されている場合、INDEX($D$1:$D$3,MOD(ROW()-1,3)+1)を使用すると、数式を編集せずに繰り返しリストを更新または拡張するのが簡単になります。

利点: INDEXは、MIXおよびSEQUENCE式の制限を克服し、混合タイプの数列や任意のカスタム順序をサポートするため、高度な、不規則な、およびテキストベースの繰り返しに適しています。

潜在的な問題: 数式が常に同じ値を返す場合は、絶対/相対参照を確認し、数式の開始位置と行計算が一致しているか確認してください。

アルファベット、コード、グループ化、色名、またはカスタム数値を不規則または正確な順序で繰り返す場合に最適です。数値のみや線形パターンに限定されません。

VBAコードで数列の繰り返しを自動化する

高度なシナリオや、パターンが非常に複雑である場合、プログラムで生成される場合、またはスプレッドシートの数式だけで簡単に達成できない高いレベルの自動化が必要な場合、VBA(Visual Basic for Applications)を使用すると、動的に任意の繰り返しパターンを構築し、埋めることができます。このアプローチは、次の場合に特に有用です:

  • 数列がルール、関数、または動的に取得される(事前に不明な場合)。
  • 繰り返し回数、ブロックサイズ、または数列の長さが変わる場合、またはユーザー入力によって決まる場合。
  • 数列に複雑なロジック、条件付き繰り返し、または自動範囲拡張が必要な場合。

操作手順:

1. Excelで、開発ツール > Visual BasicをクリックしてVBAエディタを開きます。VBAウィンドウで、挿入 > モジュールをクリックし、以下のコードをモジュールに貼り付けます:

Sub RepeatCustomSequence()
    Dim seqArr As Variant
    Dim repeats As Long
    Dim outRange As Range
    Dim i As Long, n As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    ' Prompt for sequence to repeat (as comma-separated values)
    Dim seqInput As String
    seqInput = Application.InputBox("Enter your sequence to repeat (comma separated):", xTitleId, "A,B,C")
    
    If seqInput = "" Then Exit Sub
    
    seqArr = Split(seqInput, ",")
    repeats = Application.InputBox("How many repeats?", xTitleId, 10, Type:=1)
    Set outRange = Application.InputBox("Select top-left cell of output range", xTitleId, Type:=8)
    
    n = UBound(seqArr) - LBound(seqArr) + 1
    
    For i = 0 To repeats - 1
        outRange.Offset(i, 0).Value = seqArr((i Mod n) + LBound(seqArr))
    Next i
End Sub

2VBAエディタで、 Run button 実行ボタンをクリックするか、F5キーを押して実行します。繰り返したいカスタム数列(カンマで区切られたA、B、Cや5、10、15など)を入力し、繰り返し回数と最初に出力するセルを指定します。VBAスクリプトは、あなたの繰り返しパターンを直接シートに出力します。

カスタマイズ: このVBA方式はさらに調整可能です。例えば、水平方向にブロックを繰り返す、間隔をプロンプトで尋ねる、またはより複雑な数列ロジックをサポートするように出力範囲のロジックや数列のサイクル方法を修正します。

トラブルシューティング: 何も表示されない場合は、Excelのマクロセキュリティ設定を再確認し、提供された数列と回数が有効であることを確認してください。新しいコードを実行する前に必ずワークブックを保存して既存のデータを保護してください。

VBAは、高度なユーザー向け、または数式アプローチを超えた動的でプログラム的にカスタマイズされた非常に大規模かつ複雑な数列タスクに推奨されます。

✅ 結論

Excelで数値やテキストの数列を繰り返すには、ニーズやExcelのバージョンに応じていくつかの効率的な方法があります。

  • フィルハンドルは、短い数列や基本的なビジュアルレイアウトに最適で、手動でのパターン作成に非常に便利です。
  • MOD関数は、均等に配置された数値の繰り返しに適した動的で数式駆動のソリューションを提供します。線形数値の繰り返しに最適な選択肢です。
  • より柔軟性と使いやすさが必要な場合、特にカスタムまたは混合テキスト/数値の数列については、Kutools for Excelが複雑な設定なしでユーザーフレンドリーなインターフェースと強力な数列処理を提供します。
  • ExcelのSEQUENCE関数は、最新版のExcelで数式のみを使用して線形数値の繰り返しを迅速に生成するのに理想的です。
  • 非線形、カスタム、またはテキストパターンの繰り返しには、INDEX式が無敵のコントロールを提供し、配列または範囲で指定された任意のパターンに対応できるため、数値限定やステップ単位の繰り返しの制限を超えています。
  • 究極の柔軟性や動的パターン生成が必要な場合、つまり生成された非常に複雑な数列やランタイムで決定された数列 — VBAの自動化が高度な力を発揮し、ビルトインツールが不足する専門的かつ技術的なタスクに適しています。

自分のワークフローと数列パターンの要件に最適な方法を選んで、生産性を向上させ、繰り返しのデータタスクを合理化しましょう。さらに詳しいExcelのソリューションや全スキルレベル向けの戦略を知りたい方は、ぜひ当社のウェブサイトをご覧ください。数千のチュートリアルを提供し、Excelの習得をサポートします


最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ15ツールセット12 種類テキストツールテキストの追加特定の文字を削除など)50種類以上のグラフガントチャートなど)40種類以上の便利な数式誕生日に基づいて年齢を計算するなど)19 種類の挿入ツールQRコードの挿入パスから画像の挿入など)12 種類の変換ツール単語に変換する通貨変換など)7種の統合&分割ツール高度な行のマージセルの分割など)… その他多数
Kutoolsはお好みの言語で利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語、その他40以上の言語に対応!

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...


Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に

  • Word、Excel、PowerPointでタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得