A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
>このマクロに何かを加えるとできると思うのですが、
SpecialCells ですと、返ってややこしいと思います。そこで採れたRangeオブジェクトは、Areas になって一様ではありませんから、分解しなければなりません。数式で取れたRangeオブジェクトは、最終は、「総計」がありますと、そのRangeオブジェクトを一行にしなければなりません。
まして、「集計」という文字は、左隣のセルにありますから、以下のようなマクロになってしまいます。
'-----------------------------------------------------------------
'なるべく、標準モジュールが良いです。
Sub TestMacro1()
Dim rng As Range
Dim i As Long
On Error Resume Next
Set rng = ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas)
If rng Is Nothing Then Exit Sub
On Error GoTo 0
For i = rng.Areas.Count To 1 Step -1
If rng.Areas(i).Cells(1).Offset(, -1).Value Like "*集計" Then
rng.Areas(i).Cells(2, 1).Offset(, -1). _
Resize(2, rng.Areas(i).Columns.Count + 1).Insert xlShiftDown
End If
Next i
Set rng = Nothing
End Sub
-----------------------------------------------------------------
'単純に、範囲を取って、下から、集計という文字を探すという程度ではどうでしょうか?
Sub TestMacro2()
Dim rng As Range
Dim i As Long
Dim j As Integer
Set rng = ActiveSheet.Range("A1").CurrentRegion
j = rng.Columns.Count
If rng Is Nothing Then MsgBox "範囲の設定を確認してください。", 48
With rng.Columns(1)
For i = .Cells.Count To 1 Step -1
If .Cells(i, 1).Value Like "*集計" Then
.Cells(i + 1, 1).Resize(2, j).Insert xlShiftDown
End If
Next i
End With
Set rng = Nothing
End Sub
-----------------------------------------------------------------
ただ、こうしたOutline の後の編集は、そのまま行うと後の誤動作の可能性がありますから、最初から、並べ替えで作るか、「集計」をClearしてから、マクロを行ったほうが安全のような気がします。
この回答へのお礼
お礼日時:2007/11/18 22:51
お答えありがとうございます。
Sub TestMacro2()の方が良いかもしれません。
それに、思いつきだったので実際集計した表に行を挿入とかは
アウトラインがぐちゃぐちゃになり、使い物になりませんでした。
Wendy02さんのおっしゃるとおりですね。
もう少し考えてみようと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのマクロを教えていただけないでしょうか? 1 2023/07/06 19:56
- Visual Basic(VBA) Excel VBA マクロ ある列の最終行迄を参照し、別の列の空白セルに値を入力したいです 2 2023/03/05 02:44
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Excel(エクセル) Excel VBA 空白行があるセル範囲に色を付ける 3 2022/06/13 15:58
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Excel(エクセル) 特定文字(数字)で行挿入、挿入された行で合計したい 2 2023/03/13 14:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/01/06 08:39
- Excel(エクセル) エクセルで最下行にデータを追加するVBA 6 2023/05/09 09:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/09 12:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ピボットテーブルのことです
-
IF関数を使用した数字に、カン...
-
エクセルのピポットテーブルで...
-
列を増やさずに、月だけの件数...
-
パワーポイントで資料を作る時 ...
-
エクセルの集計を数字以外です...
-
ピボットテーブルへの集計フィ...
-
エクセルで○や×の図形の集計は...
-
エクセルを使ってCSVデータを自...
-
ピボットテーブルの項目間の計算
-
関数を教えていただきたいです...
-
ピボットを使ったシートに計算...
-
勤務表の中抜け集計の関数を教...
-
オートシェイプを色別に個数を...
-
ピポットテーブルの参照元を別...
-
Microsoft Formsによるアンケー...
-
保存ブックを開かずコピーペー...
-
Excel週ごとの集計を関数で
-
エクセル ピボットテーブルを更...
-
ファイルメーカーpro6 チェッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ピボットテーブルのことです
-
エクセルのピポットテーブルで...
-
ピポットテーブルの参照元を別...
-
マクロで貼り付け位置を可変さ...
-
エクセルの集計を数字以外です...
-
ピボットテーブルの項目間の計算
-
オートシェイプを色別に個数を...
-
確定申告書作成においてパソコ...
-
エクセルで○や×の図形の集計は...
-
勤務表の中抜け集計の関数を教...
-
パワーポイントで資料を作る時 ...
-
IF関数を使用した数字に、カン...
-
エクセルの集計機能を横方向(...
-
Microsoft Formsによるアンケー...
-
ピボットテーブルへの集計フィ...
-
エクセルで数値のプラス毎とマ...
-
エクセル 小計後に別シートにデ...
-
保存ブックを開かずコピーペー...
-
ピボットテーブル オリジナル...
-
Excelの小計機能をVBAでやりた...
おすすめ情報