アクセス上位ページ
 
最近の更新内容
(6)-m.Clear メソッド ⇐ [PREV]
[NEXT] ⇒ (6)-o.SpecialCells メソッド

Excel VBA ≫ 1.基礎編 - セル・レンジ(6)-n.Copy,Insert,Delete メソッド

Copy メソッド

セルの値・数式・書式などを単純にコピー&ペーストするにはCopyメソッドを使用します。 Copyメソッドの引数としてコピー先のセルまたはレンジを指定すると、そこへ貼り付けることができます。




  • 【構文】
    object.Copy ( [Destination] )

  • 引数名 省略 説明
    Destination コピー先のセル範囲を指定します。
    この引数を省略すると、クリップボードにコピーされます。

  • Copyメソッドの使用例
  • Sub sample6_33()
        'コピー&ペースト
        Range("B3:B13").Copy Range("C3:D13")
    End Sub
    
    ⇒ サンプルマクロ集 へ

    <実行前> sample6_33の実行前 <実行結果> sample6_33の実行結果

    Copyメソッドの引数を省略すると、コピーした内容はクリップボードへ退避されます。 その後PasteSpcialメソッドを使用すると様々な貼り付け方が可能になります。

  • 【構文】
    object.PasteSpecial ( [Paste] [, Operation] [, SkipBlanks] [, Transpose] )

  • 引数名 省略 定数 説明
    Paste xlPasteAll すべてを貼り付けます。
    xlPasteAllExceptBorders 輪郭以外のすべてを貼り付けます。
    xlPasteAllUsingSourceTheme テーマを使用してすべてを貼り付けます。
    xlPasteColumnWidths 列幅を貼り付けます。
    xlPasteComments コメントを貼り付けます。
    xlPasteFormats 書式を貼り付けます。
    xlPasteFormulas 数式を貼り付けます。
    xlPasteFormulasAndNumberFormats 数式と数値の書式を貼り付けます。
    xlPasteValidation 入力規則を貼り付けます。
    xlPasteValues 値を貼り付けます。
    xlPasteValuesAndNumberFormats 値と数値の書式を貼り付けます。
    Operation xlPasteSpecialOperationAdd コピーしたデータは、対象セルの値に加算されます。
    xlPasteSpecialOperationDivide コピーしたデータは、対象セルの値によって除算されます。
    xlPasteSpecialOperationMultiply コピーしたデータには、対象セルの値に乗算されます。
    xlPasteSpecialOperationNone 貼り付け操作で計算は行われません。
    xlPasteSpecialOperationSubtract コピーしたデータは、対象セルの値が減算されます。
    SkipBlanks True / False(規定値) 空白のセルを貼り付けの対象にしないようにするには、True を指定します。
    Transpose True / False(規定値) データの行と列を入れ替えるには、True を指定します。


  • PasteSpecialで書式を貼り付ける例
  • Sub sample6_34()
        'クリップボードへコピー
        Range("B3:B13").Copy
        '書式だけを貼り付け
        Range("C3:D13").PasteSpecial xlPasteFormats
    End Sub
    
    ⇒ サンプルマクロ集 へ

    <実行前> sample6_34の実行前 <実行結果> sample6_34の実行結果

Insert メソッド

空のセルを挿入またはコピーしたセルを挿入する場合はInsertメソッドを使用します。 引数として右または下のどちらへセルをシフトさせるかを指定します。 この引数を省略すると、セル範囲の形に適した方向にシフトされます。
  • 【構文】
    object.Insert ( [Shift] )

  • 引数名 省略 定数 説明
    Shift xlShiftToRight セルを右方向へシフトする
    xlShiftDown セルを下方向へシフトする


  • Insertメソッドの使用例(クリップボードにデータがない場合)
  • Sub sample6_35()
        '空のセルを挿入(右方向へシフト)
        Range("C3:C13").Insert xlShiftToRight
    End Sub
    

    <実行前> sample6_35の実行前 <実行結果> sample6_35の実行結果
  • Insertメソッドの使用例(クリップボードにデータがある場合)
  • sample6_36()
        'クリップボードへコピー
        Range("B3:B13").Copy
        'コピーしたセルを挿入
        Range("C3:C13").Insert xlShiftToRight
    End Sub
    

    <実行前> sample6_36の実行前 <実行結果> sample6_36の実行結果

Delete メソッド

セルを削除したい場合はDeleteメソッドを使用します。 引数として左または上のどちらへセルをシフトさせるかを指定します。 この引数を省略すると、セル範囲の形に適した方向にシフトされます。
  • 【構文】
    object.Delete ( [Shift] )

  • 引数名 省略 定数 説明
    Shift xlShiftToLeft セルを左方向へシフトする
    xlShiftUp セルを上方向へシフトする


  • Deleteメソッドの使用例
  • Sub sample6_37()
        'セルを削除(左方向へシフト)
        Range("B3:B13").Delete xlShiftToLeft
    End Sub
    

    <実行前> sample6_37の実行前 <実行結果> sample6_37の実行結果
カテゴリ内ページ



Page
Top