- 締切済み
以下のようなセルの結合って、どうすればいいのでしょうか?
みなさん、是非教えて頂けないでしょうか。 エクセルで、以下のようにセルを即座に結合できる方法を探しています。 名前 お店 松本 A 松本 B 松本 C 鈴木 D 山口 F 山口 G 山口 H 山口 I 山口 J ↓ 名前 お店 A 松本 B C 鈴木 D F G 山口 H I J 名前毎に、次の列の名前が変わったら、その連続している名前のセルを全て結合したいのです。 全部で約7500行、名前が500程あるので、中々手作業だと時間がとられて仕方ありません。 どなたか、お力を貸して頂けないでしょうか。 よろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- merlionXX
- ベストアンサー率48% (1930/4007)
A列に名前がありA1から始まっているものとします。 以下の手順をおためしください。 1.Altキー+F11キーで Visual Basic Editor画面を呼び出します。 2.画面上部のメニューバーから挿入、標準モジュールで出てきたコードウィンド(右側の白い広い部分)に以下のコードをコピペします。 '*****ここから下をコピペ***** Sub test01() With ActiveSheet i = 1 Do While .Cells(i, 1).Value <> "" j = i + 1 Do While .Cells(i, 1).Value = .Cells(j, 1).Value j = j + 1 Loop Application.DisplayAlerts = False .Range(.Cells(i, 1), .Cells(j - 1, 1)).Merge Application.DisplayAlerts = True i = j Loop End With End Sub '*****ここより上までをコピペ***** 3.Alt+F11キーでワークシートへもどります. 4.メニューから、ツール、マクロ、マクロで出てきたマクロ名(test01)を選択して実行 これでできます。
- ts3m-ickw
- ベストアンサー率43% (1248/2897)
No.2です。1回しか使わないだろうからいいかなって思ったんですが、 jが参照範囲を超えてエラーになるのが嫌な場合はこちらを。 Sub Merge() i = 1 Do While (i < 7500 And j < 7500) j = i + 1 Do While Cells(i, 1).Value = Cells(j, 1).Value j = j + 1 If j > 7500 Then GoTo endm Loop Range(Cells(i, 1), Cells(j - 1, 1)).Select Selection.Merge i = j Loop endm: End Sub
お礼
ts3m-ickwさん あっという間に対象の名前を全て結合することができました。 1つ1つクリックするだけなので、とても作業が簡素化されました。 本当にありがとうございました!
- ts3m-ickw
- ベストアンサー率43% (1248/2897)
こんなマクロを組んで実行して、あとは左クリックかEnterを連打する。 Sub Merge() i = 1 Do While i < 7500 j = i + 1 Do While Cells(i, 1).Value = Cells(j, 1).Value j = j + 1 Loop Range(Cells(i, 1), Cells(j - 1, 1)).Select Selection.Merge i = j Loop End Sub
A B C D 1 名前 お店 結合 2 松本 A 1 3 松本 B 1 4 松本 C 1 5 鈴木 D 0 6 山口 F 1 7 山口 G 1 8 山口 H 1 9 山口 I 1 10 山口 J 1 ■C2セル =MOD(C1+(A1<>A2),2) フィルハンドルをダブルクリック C列を1行目から最終行まで選択して [フィルタ]→[オートフィルタ] まず「1」を抽出し行番号が青字の D列の2行目から最終行までを選択 Alt + ; で可視セル選択をして[セルの結合] 次に「0」を抽出して同じ処理を行う。 これで D列に結合された範囲が作成されるので オートフィルタを解 除後 D列をコピーして A列に[形式を選択して貼り付け]→[書式]を 選択して[OK] でいいと思います。
お礼
Chiquilinさん 無事にセルの結合を行うことができました。 早急にお答え頂きありがとうございました。
お礼
merlionXXさん 説明をご丁寧に記入して頂いたおかげで、無事にセルの結合ができました。 どうもありがとうございました。