• ベストアンサー

エクセルVBA 行のグループ化を外すマクロ

いつもお世話になります。 6行目から55行目までと、7以降の行から55行目までの2重にグループ化している行があり、現状は Rows("6:55").Rows.Ungroup Rows("6:55").Rows.Ungroup でグループ化を解除しているのですが、3重以上や、1重しかグループ化していないことも想定しておく必要があるのです。 このコードだと、2重以上のグループ化をしていない時にエラーが起こってしまうし、3重以上だと解除しきれないのですが、何重にグループ化していても、もしくはグループ化していなくてもエラーを起こさず解除できる方法はありますでしょうか?

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

  • ベストアンサー
  • taocat
  • ベストアンサー率61% (191/310)
回答No.2

こんばんは。 グループ化は使ったことはないのですが、 以下のコードをちょと試してみてください。 ------------------------------------------- Sub Test()  ActiveSheet.Rows("6:55").ClearOutline 又は  ActiveSheet.Cells.ClearOutLine End Sub ------------------------------------------- 外しましたらご容赦願います。(^^;;; 以上です。

7-samurai
質問者

お礼

どちらともビンゴでした(^○^) ありがとうございました。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 ベタな方法ですが。 エラー発生を判定基準にします。 Sub グループ化解除()   On Error Resume Next   Do While Err.Number = 0     Rows("6:55").Rows.Ungroup   Loop   Err.Clear End Sub

7-samurai
質問者

お礼

いつもお世話になります。お久しぶりです。 教えていただいた方法は、今回のみならず、様々なシーンで使えそうですね。 ありがとうございました。

関連するQ&A