Note: The other languages of the website are Google-translated. Back to English

Excelで列を左から右にXNUMXつの列にスタックする方法は?

複数の列があるとすると、次のスクリーンショットに示すように、列を左から右にXNUMXつの列に積み重ねることができます。 列をXNUMXつずつ手動で移動する以外に、Excelでこれを解決するためのトリックはありますか?
ドキュメントスタック列を左から右に1

VBAを使用して列を左から右にXNUMX列にスタックします

Kutools for Excelを使用して、列を左から右にXNUMX列にスタックします


VBAを使用して列を左から右にXNUMX列にスタックします

Excelには、このジョブを処理できる組み込み関数はありませんが、VBAコードが役立ちます。

1。 押す Alt + F11 キー、次に アプリケーション向け Microsoft Visual Basic ウィンドウ、クリック インセット > モジュール 新しい空のモジュールを作成します。

2.以下のコードをコピーして、 モジュール.

VBA:列をXNUMXつにスタックします

Sub StackColumns()
'UpdatebyExtendoffice20180814
Dim xSRg, xDRg As Range
Dim xDWS As Worksheet
Dim xIntDR, xIntDC, xI As Long
Dim xFNumR, xFNumC As Long
On Error GoTo Err1
Set xSRg = Application.InputBox("Select Columns:", "Kutools for Excel", xTxt, , , , , 8)
If xSRg Is Nothing Then
Err1:
    Application.ScreenUpdating = True
    Exit Sub
End If
Set xDRg = Application.InputBox("Select a cell to place result:", "Kutools for Excel", xTxt, , , , , 8)
If xDRg Is Nothing Then
    Exit Sub
End If
Application.ScreenUpdating = False
Set xDWS = xDRg.Worksheet
xIntDR = xDRg.Row
xIntDC = xDRg.Column
xI = 0
    For xFNumC = 1 To xSRg.Columns.Count
        For xFNumR = 1 To xSRg.Rows.Count
            Set xDRg = xDWS.Cells(xIntDR + xI, xIntDC)
            xDRg.Value = xSRg.Cells(xFNumR, xFNumC).Value
            xI = xI + 1
        Next xFNumR
    Next xFNumC
Application.ScreenUpdating = True
End Sub

ドキュメントスタック列を左から右に2

3。 押す F5 コードを実行するためのキーを押すと、XNUMXつにスタックする列を選択するためのダイアログが表示されます。
ドキュメントスタック列を左から右に3

4。 クリック OK、結果を配置するセルを選択します。
ドキュメントスタック列を左から右に4

5。 クリック OK 終わる。 これで、選択した列がXNUMXつの列にスタックされました。
ドキュメントスタック列を左から右に5


Kutools for Excelを使用して、列を左から右にXNUMX列にスタックします

あなたが持っている場合 Kutools for Excel Excelにインストールすると、 Transform Range このジョブを処理するユーティリティ。

Kutools for Excel, 以上で 300 便利な機能は、あなたの仕事をより簡単にします。 

インストールした後 Kutools for Excel、以下のようにしてください:(今すぐExcel用のKutoolsを無料でダウンロードしてください!)

1.スタックする列を選択し、をクリックします クツール > レンジ > Transform Range.
ドキュメントスタック列を左から右に6

2。 の中に Transform Range ダイアログ、チェック Range to single row チェックボックスをクリックします Ok.
ドキュメントスタック列を左から右に7

3.ポップダイアログで、結果を配置するセルを選択し、をクリックします OK.
ドキュメントスタック列を左から右に8

これで、列がXNUMXつの行に変換されました。
ドキュメントスタック列を左から右に9

4.単一の行を選択し、を押します Ctrl + C コピーするには、スタック列を配置する別のセルを選択し、右クリックして選択します Transpose(T) コンテクストメニューに表示されます。
ドキュメントスタック列を左から右に10

これで、単一の行がスタック列に置き換えられました。
ドキュメントスタック列を左から右に11


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (3)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
同じことをするためのワードチート:
-Excelですべての行と行をコピーします
-なしでWordドキュメントに貼り付けます
--ctrl + h(検索して置換)
-XNUMXつの行の間にタブスペースをコピーします
-検索バーに貼り付けます
-改行でタブに置き換えます"^l"

これで、すべてのセルがWordドキュメントの列に表示されます。
それらをコピーしてExcelに貼り付けます:完了です!
このコメントは、サイトのモデレーターによって最小化されました
私はあなたに永遠に感謝します。 どうもありがとう!
このコメントは、サイトのモデレーターによって最小化されました
誰かが列を置き換える/ハードコーディングする方法を知っていますか(選択のためのメッセージボックスを表示しない)?したがって、XSRgを次のように設定します:Set xSRg = Range( "A1")。CurrentRegion.Select(これは機能しないためタイプの不一致の)ありがとう
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護