KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

1 列から5 行(または n 行)ごとに複数列に転置するには、どうすればよいでしょうか?

著者Xiaoyang変更日
5行ごと(またはn行ごと)に転置

Excel で1 列のデータを5 行(または任意の n 行)ごとに複数列に転置すると、分析やレポート作成のためにデータを効果的に再編成できます。たとえば、列 A に長いリストがあり、それを A1:A5 を C6:G6 に、A6:A10 を C7:G7 に、その後も同様に左側のスクリーンショットのように5 行ごとに横方向に展開したい場合があります。このタスクにはいくつかの方法があり、それぞれに独自のメリットがあります。以下では、この操作を実行するための詳細なステップ・バイ・ステップガイドをご紹介します。

1 列から5 行(または n 行)ごとに複数列に転置する


数式で1 列から5 行(または n 行)ごとに複数列に転置する

Excel では、以下の数式を使って1 列のデータを n 行ごとに複数列に転置できます。次の手順に従って操作してください。

1。結果を表示したい空白セルに、次の数式を入力してください。

=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))
注:上記の数式において、「A:A」は転置したい列の参照、「A1」は使用する列の最初のセルを示します。数値「5」はデータを配置する列数を示しており、必要に応じて変更できます。また、リストの最初のセルはワークシートの1 行目に配置されている必要があります。

2。次に、フィルハンドルを右に5 セル分ドラッグし、続けて下方向にもドラッグして、0 が表示されるまで範囲を広げてください(スクリーンショット参照)。

フィルハンドルを右のセルにドラッグし、続けてフィルハンドルを下にドラッグして0が表示されるまでセル範囲を広げる

「Kutools for Excel」で1 列から5 行(または n 行)ごとに複数列に転置する

Excel のデータを1 列から複数列に転置するのが面倒ではありませんか?「Kutools for Excel」の「範囲の変換」機能がその悩みをスムーズに解決します!5 行ごとの転置はもちろん、任意の行数での転置にも対応。柔軟な行変換機能で、1 列から複数列へ転置する際の行数を自由に設定可能。複雑な操作は一切不要。わずか数回のクリックで、簡単に、そして素早く完了します!

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

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

1。列のデータを選択し、「Kutools」>「範囲」>「範囲の変換」を順にクリックしてください(スクリーンショット参照)。

2。「範囲の変換」ダイアログボックスで、「変換タイプ」の下にある「単一列を範囲に変換」オプションを選択し、「レコードあたりの行数」の下の「固定値」をオンにして、その横の「固定値」ボックスに転置後の列数を入力してください(スクリーンショット参照)。

ダイアログボックスでオプションを指定

3。「OK」ボタンをクリックするとポップアップボックスが表示されるので、結果を出力するセルを指定してください(スクリーンショット参照)。

結果を出力するセルを選択

4。「OK」ボタンをクリックすると、列のデータが5 行ごとに転置され、以下のスクリーンショットのように表示されます。

列データが5行ごとに転置される

VBA コードで1 列から5 行(または n 行)ごとに複数列に転置する

数式が正しく適用されない場合は、以下の VBA コードもお役に立ちます。

1。「ALT」+「F11」キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開きましょう。

2。「挿入」>「標準モジュール」をクリックし、表示される「Module」ウィンドウに次のコードを貼り付けてください。

VBA コード:1 列から5 行(または n 行)ごとに複数列に転置する:

Public Sub TransposeData()
'updateby Extendoffice
    Dim xLRow As Long
    Dim xNRow As Long
    Dim i As Long
    Dim xUpdate As Boolean
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xTxt As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
    Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
    If xRg Is Nothing Then Exit Sub
    If (xRg.Columns.Count > 1) Or _
       (xRg.Areas.Count > 1) Then
        MsgBox "the used range only contain one column", , "Kutools for Excel"
        Exit Sub
    End If
    Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    Set xOutRg = xOutRg.Range(1)
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xLRow = xRg.Rows.Count
    For i = 1 To xLRow Step 5
        xRg.Cells(i).Resize(5).Copy
        xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
        xNRow = xNRow + 1
    Next
    Application.ScreenUpdating = xUpdate
End Sub

3。コードを貼り付けたら、「F5」キーを押して実行してください。すると、プロンプトボックスが表示され、転置したい列の選択を促されます(スクリーンショット参照)。

データ範囲を選択するVBAコード

4。「OK」をクリックし、別のポップアップボックスで結果を表示するセルを1 つ選択してください(スクリーンショット参照)。

結果を配置するセルを1つ選択するVBAコード

5。「OK」をクリックすると、列のデータが目的の5 列に変換されます(スクリーンショット参照)。

列内のデータが5つの列に変換される
注:上記のコードにおいて、数値「5」を必要な他の数値に変更できます。

Excel で1 列から5 行(または任意の n 行)ごとに複数列に転置するには、本記事で紹介する3 つの効果的な方法があります。それぞれ異なるアプローチでデータを再配置でき、Excel ツールやプログラミングへの習熟度に応じて最適な方法をお選びいただけます。さらに多くのExcel ヒントやテクニックをご覧になりたい方は、当社ウェブサイトに数千ものチュートリアルがございます。

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 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 でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得