トップ > 汎用コード > 一行毎に行挿入・一列毎に列挿入

  このエントリーをはてなブックマークに追加  

一行毎に行挿入・一列毎に列挿入

選択セル範囲を対象に一行毎、あるいは一列毎に、行・列をまとめて挿入するマクロです。
下図は、行挿入のマクロ実行例です。


マクロ実行後に「元に戻す」機能は使用できません。
事前にブックを保存しておくことをお薦めします。

コードの貼り付け場所

サンプルコード

'セル範囲のセルアドレスを取得しまとめて行(列)を挿入します

Sub Selection_Insert_Rows() '選択セル範囲 1行毎に行を追加する
    If Not TypeName(Selection) = "Range" Then Exit Sub
    Dim i As Long, strAds As String
    With Intersect(Selection, ActiveSheet.UsedRange)
        For i = 1 To .Rows.Count
            strAds = strAds & .Cells(i, 1).Offset(1).Address(False, False) & ","
            If 200 < Len(strAds) Then
                Range(Left$(strAds, Len(strAds) - 1)).EntireRow.Insert
                strAds = ""
            End If
        Next
    End With
    If 0 < Len(strAds) Then
        Range(Left$(strAds, Len(strAds) - 1)).EntireRow.Insert
    End If
End Sub

Sub Selection_Insert_Columns() '選択セル範囲 1列毎に列を追加する If Not TypeName(Selection) = "Range" Then Exit Sub Dim i As Long, strAds As String With Intersect(Selection, ActiveSheet.UsedRange) For i = 1 To .Columns.Count strAds = strAds & .Cells(1, i).Offset(, 1).Address(False, False) & "," If 200 < Len(strAds) Then Range(Left$(strAds, Len(strAds) - 1)).EntireColumn.Insert strAds = "" End If Next End With If 0 < Len(strAds) Then Range(Left$(strAds, Len(strAds) - 1)).EntireColumn.Insert End If End Sub

ページトップへ戻る

Excel 汎用コード

Word 汎用コード

Copyright(C) 2009- 坂江 保 All Rights Reserved.