[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『1行おきに2行挿入する』(めんま)
こんにちは。はじめまして。エクセル初心者です。
タイトル通りの質問ですが、 1行おきに2行挿入する方法をご存じの方がいらっしゃれば 教えていただけないでしょうか?
WinXP,エクセル2007です。 よろしくお願いいたします。
「1行おきに2行挿入」っていうのが微妙なんですけど、
Sub test()
Dim r As Range
'データ範囲を調べる列をセット Set r = Range("A1", Cells(Rows.Count, 1).End(xlUp))
With r.Offset(, r.Parent.UsedRange.Columns.Count) .FormulaR1C1 = "=IF(MOD(ROW(),2)=1,"""",1)" .Value = .Value .EntireColumn.SpecialCells(xlCellTypeConstants).EntireRow.Insert .EntireColumn.SpecialCells(xlCellTypeConstants).EntireRow.Insert .EntireColumn.Delete End With End Sub
(ウッシ)
ぶつかり。 同じ内容でだった。 手作業で行う操作をマクロにしたかの違い。
作業セルを使います。 行を挿入したいセルに C5だとして、 =MOD(ROW(C5),2) これを下にフィル。
オートフィルタで、0か1を絞る。 抽出されたC5から1番下のセルを選択。 編集→ジャンプ→セル選択→可視セルにチェックを入れたOK。
選択されたセルを右クリック、行の挿入。 作業セルを削除。 BJ
早速のご回答ありがとうございます。
申し訳ございません。説明がよくなかったです。
やりたいことは以下の通りです。
(前) a b c d e
(後) a (空白) (空白) b (空白) (空白) c (空白) (空白) d (空白) (空白) e
が希望です。
今回のウッシさん、BJさんのですと、 a (空白) (空白) b c (空白) (空白) d e
となってしまいます。
もし、対応可能でしたらよろしくお願いいたします。
やっぱり微妙でしたね。
ちょっと工夫するだけなんですけど・・・
Sub test1()
Dim r As Range
'データ範囲を調べる列をセット Set r = Range("A1", Cells(Rows.Count, 1).End(xlUp))
With r.Offset(, r.Parent.UsedRange.Columns.Count) .FormulaR1C1 = "=IF(MOD(ROW(),2)=1,"""",1)" .Value = .Value .EntireColumn.SpecialCells(xlCellTypeConstants).EntireRow.Insert .EntireColumn.SpecialCells(xlCellTypeConstants).EntireRow.Insert .EntireColumn.SpecialCells(xlCellTypeConstants).Offset(1).EntireRow.Insert .EntireColumn.SpecialCells(xlCellTypeConstants).Offset(1).EntireRow.Insert .EntireColumn.Delete End With End Sub
ウッシさん 早速のご回答ありがとうございます。 できました。すげーーーって思いました。 取り急ぎお礼のみを。 (めんま)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.