• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:結合セル内の値を、結合解除後に結合されていた全てのセルへコピーする方法)

結合セル内の値を解除後のセルへコピーする方法

このQ&Aのポイント
  • 結合セル内の値を解除後、それぞれのセルへ値をコピーする方法について教えてください。
  • 現在、結合セルを全て解除し、各セルに値をコピーする方法を使用していますが、時間がかかってしまいます。
  • 高速化するために、上から順に結合セルを探し、解除後のセルに値をコピーする方法を試してみたいです。どのように記述すれば良いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • jcctaira
  • ベストアンサー率58% (119/204)
回答No.4

使用範囲が少なければ、時間はそれほどかからないと思います… Sub 結合解除()  Dim 範囲 As Range  Dim 結合範囲 As Range  Dim 値 As Variant  For Each 範囲 In ActiveSheet.UsedRange    If 範囲.MergeCells Then      Set 結合範囲 = 範囲.MergeArea      値 = 範囲      範囲.UnMerge      結合範囲 = 値    End If  Next End Sub

ssshaider
質問者

お礼

お返事が遅くなり申し訳ありません。 頂いたものをそれぞれ試してみて、一番シンプルかつ処理速度が早かった、 こちらのコードを使わせて頂きました!

その他の回答 (3)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

たとえば sub macro1()  dim LastRow    ’一番下にあるのが結合セルかそうでないかで,末尾セルの取り方を工夫  with range("A65536").end(xlup)   if .mergecells then    lastrow = .offset(1).row - 1   else    lastrow = .row   end if  end with  'セルを一個ずつなめるよりは,少し早くできると思います  range("A:A").unmerge  with range("A2:A" & lastrow)   .specialcells(xlcelltypeblanks).formular1c1 = "=R[-1]C"   .value = .value  end with end sub

  • oosakin
  • ベストアンサー率0% (0/1)
回答No.2

的外れだとごめんなさい、a1~e1結合セルを解除します,(セルは選択状態)そのままメニューから編集・ファイル・右方向にコピーでどうでしょうか。

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

手動で行う手順を書いてみますので、ご自身でも考えてみてください、 1.A1セルを選択する 2.結合を解除する 3.結合されていたセルが選択されたまま、Ctrlキーと Dキーを同時に押す 4.Shiftキーを押しながら Enterキーを押す 5.下向き矢印を押す 6.2へ戻る