目次
Excelで作業しているときに最も重要で広く使われている作業の1つは、データを失うことなくセルを縦に結合することです。 今日は、データを失うことなくExcelでセルを縦に結合する方法を紹介します。
練習用ワークブックをダウンロードする
データを失うことなくセルを縦に結合する.xlsmデータを失うことなく、Excelでセルを縦に結合する4つの簡単な方法
ここでは、Martin Bookstoreという本屋にある著者の名前とその本のデータセットがあります。
今日の目的は、データを失うことなく、同じ著者の書籍名を1つのセルに縦に統合することです。
1.データを失うことなく、Excelのセルを縦に結合するために、Excelのツールバーからマージとセンターツールを実行します。
ステップ1.
マージしたい最初のセルグループ(この例では、The books of Charles Dickens)を選択します。
ステップ2.
➤ に進みます。 ホーム> マージ & センター というセクションの下にあるExcelツールバーの アライメント .
ステップ3.
➤ ドロップダウンメニューをクリックします。
➤ 選択できるオプションの中から Merge & Center .
ステップ4.
➤ クリックしてください。 Merge & Center .
選択したセル群が1つのセルに統合され、最初のセル(この例ではGreat Dickens)の値だけが含まれていることが確認できます。
ステップ5.
➤ 残りのセルグループにも同じ手順を繰り返して、1つのセルに統合することができます。
続きを読む Excelでセルを結合して中央揃えにする方法
2.アンパサンド(&)記号を使用して、データを失うことなくExcelで縦にセルをマージします。
上記の方法は、細胞群を1つの細胞に統合するものですが、我々の要求を完全に満たしているわけではありません。
すべてのセルからではなく、最初のセルだけから値を保持します。
つまり、データが失われるのです。
複数のセルの値を 1 つのセルに統合するには、次のような数式を使用します。 アンパサンド(&) の記号を使用します。
最初のセル群の計算式は次のようになります。
=C4&", "&C5&", "&C6
注
- ここでは、以下のものを使用しました。 カンマ の間に、見栄えをよくするためのブックネームを入れました。 好きなものを使ってください。
次に、すべてのグループの細胞について、同じ手順を繰り返します。
3.データを失うことなく、Excelのセルを縦に結合する数式を使用する
を使うのではなく アンパサンド(&) シンボルを使用すると CONCATENATE関数 を使用すると、複数のセルを1つのセルに統合することができます。
最初のセル群を結合する数式は、次のようになります。
=concatenate(c4,", ",c5,", ",c6)
注
- ここでは、さらに カンマ は、書籍名と書籍名の間に挟んでください。 お好きなものをお使いください。
次に、残りのセル群に対してこの数式を使用すると、1つのセルに統合することができます。
4.データを失うことなく、Excelのセルを縦に結合するVBAコードを実行する
上記の方法はいずれも全く問題なく機能しますが、それでも我々の目的を完全に満たすものではありません。
このような、1回のクリックですべてのセルのグループを1つのセルに統合するような方法を導き出したい。
そして、そう、その方法があるのです。 ここでは、その方法を、「Space」を使って導出します。 ブイビーエー のコードで、すべてのセルグループを最も簡単な方法で単一セルに統合します。
ステップ1.
➤ プレス ALT+F11 をキーボードで入力します。 ブイビーエー のウィンドウが表示されます。
ステップ2.
➤ に行ってみてください。 インサート タブをクリックします。
➤ 選択できるオプションの中から モジュール .
ステップ3.
➤ という新しいモジュール・ウィンドウを作成しました。 "モジュール1" が開きます。
➤ 以下を挿入してください。 ブイビーエー のコードをモジュールに追加します。
コード
Sub Merging_Rows() Dim out As Variant out = " Dim start As Variant start = 1 Dim ending As Variant ending = 1 Dim i As Variant Dim j As Variant For i = 2 To Selection.Rows.Count + 1 If Selection(i, 1) "" Or i = Selection.Rows.Count + 1 Then ending = i - 1 For j = start To ending If j = ending Then out = out + Range(Selection(j, 2).Address).Value.Else: out = out + Range(Selection(j, 2).Address).Value + vbNewLine End If Next j Range(Selection(start, 2).Address) = out Range(Selection(start, 1).Address + ":" + Selection(ending, 1).Address).Merge Across:=False Range(Selection(start, 2).Address + ":" + Selection(ending, 2).Address).Merge Across:=False start = iout = "" End If Next i End Sub
ステップ4.
➤ ワークブックを次の名前で保存します。 エクセルマクロ対応ワークブック .
ステップ5.
➤ ワークブックに戻り、データセットを選択します。 カラムヘッダー ).
ステップ6.
➤ プレス ALT+F8 をキーボードで入力します。
➤ というダイアログボックスが表示されます。 マクロ が表示されます。 行のマージ をクリックします。 実行 .
ステップ6.
➤ セルを結合すると、左上のセルの値だけが保持され、他の値は破棄されることを示す警告ボックスが表示されます。
➤ をクリックします。 よっしゃー .
ステップ7.
➤ 同じ警告ボックスが数回表示されます。 をクリックします。 よっしゃー 毎回
➤ 最後に、すべてのセルのグループが、このように縦に1つのセルに統合されていることを確認します。
結論
これらの方法を使用すると、データを失うことなく、Excelのセルを縦に結合することができます。 あなたは他の方法を知っていますか? または何か質問がありますか? 遠慮なく私達に尋ねてください。