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

Excelで他のすべての行/セルをマージするにはどうすればよいですか?

データのリストがあり、以下に示すようにそれらのXNUMXつおきの行またはセルを結合したい場合、それを実行する方法を知っていますか? Excelでは、数式またはVBAを使用して、XNUMXつおきの行またはセルを結合できます。


XNUMXつおきの行/セルをExcelの数式とマージする

XNUMXつおきの行/セルをVBAとマージします


矢印青い右バブル XNUMXつおきの行/セルをExcelの数式とマージする

空白のセルを選択して入力します =OFFSET(A$1,(ROW()-1)*2,0)&" "&OFFSET(A$1,((ROW()-1)*2)+1,0) (A $ 1はリストの最初のデータを示し、必要に応じて変更できます)、Enterキーを押します。 次に、塗りつぶしハンドルをドラッグして、この数式を適用するために必要な範囲を塗りつぶします。 スクリーンショットを参照してください:



矢印青い右バブル XNUMXつおきの行/セルをVBAとマージします

VBAの使用に慣れている場合は、以下のVBAを実行して、XNUMX行おきにマージすることもできます。

1。 ホールド 頭の中 ボタンを押して F11 キーボードで開くには アプリケーション用 Microsoft Visual Basic 窓。

2。 クリック インセット > モジュール、VBAをモジュールにコピーします。

VBA:XNUMX行おきにマージ

Sub CombineCells()
'Updateby20140314
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
For i = 1 To InputRng.Rows.Count Step 2
    For j = 1 To InputRng.Columns.Count
        OutRng.Value = InputRng.Cells(i, j).Value & InputRng.Cells(i + 1, j).Value
        Set OutRng = OutRng.Offset(0, 1)
    Next
    Set OutRng = OutRng.Offset(1, (InputRng.Columns.Count * -1))
Next
End Sub         

 

3。 クリック ラン VBAコードを実行するには、 Kutools for Excel ダイアログがポップアップ表示され、XNUMX行おきにマージするセルの範囲を選択できます。 スクリーンショットを参照してください:


4。 クリック OK、別のダイアログが表示され、単一のセルを選択してマージされた結果を出力できます。 スクリーンショットを参照してください:


5。 クリック OK、そしてあなたは結果を見ることができます:



関連記事:

Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations