VBAのInsertメソッド

こちらでは、エクセルVBAのInsertメソッドの解説になります。

メソッドとは、オブジェクトを操作する命令文のことでオブジェクトの動作になります。 メソッドを利用するにはオブジェクト名とメソッド名の間に「.(ピリオド)」で結んで記述します。

オブジェクト名.メソッド名

目次

Range オブジェクトのInsertメソッド

Range オブジェクトのInsertメソッドは、ワークシートまたはマクロ シートの指定された範囲に、空白のセルまたはセル範囲を挿入します。指定された範囲にあったセルはシフトされます。

構文expression.Insert(Shift, CopyOrigin)
キーワード省略説明
expression×対象となる Range オブジェクトを返すオブジェクト式を指定します。
Shift省略可能です。バリアント型 (Variant) の値を使用します。セルを移動する方向を指定します。使用できる定数は、XlInsertShiftDirection クラスの xlShiftToRight または xlShiftDown です。この引数を省略すると、セル範囲の形状に適していると判断された方向に移動します。
CopyOrigin省略可能です。バリアント型 (Variant) の値を使用します。コピー元を指定します。

Characters オブジェクトのInsertメソッド

Characters オブジェクトのInsertメソッドは、選択されている文字列の前に文字列を挿入します。

構文expression.Insert(String)
キーワード省略説明
expression×こちらは、必ず指定します。対象となる Characters オブジェクトを返すオブジェクト式を指定します。
expression×こちらは、必ず指定します。文字列型 (String) の値を使用します。置き換える文字列です。

ShapeNodes オブジェクトのInsertメソッド

ShapeNodes オブジェクトのInsertメソッドは、フリーフォーム図形にノードを挿入します。

構文expression.Insert(Index, SegmentType, EditingType, X1, Y1, X2, Y2, X3, Y3)
キーワード省略説明
expression×こちらは、必ず指定します。ShapeNodes コレクションを返すオブジェクト式を指定します。
Index×こちらは、必ず指定します。長整数型 (Long) の値を使用します。新しいノードを挿入する位置の図形ノードの番号を指定します。
SegmentType×こちらは、必ず指定します。MsoSegmentType クラスの定数を使用します。線分の種類を指定します。
EditingType×こちらは、必ず指定します。MsoEditingType クラスの定数を使用します。編集の種類を指定します。
X1 ×こちらは、必ず指定します。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType が msoEditingAuto の場合、文書の左上隅から新しいセグメントの終点までの水平距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの最初のコントロール ポイントまでの水平距離をポイント単位で指定します。
X1 ×こちらは、必ず指定します。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType が msoEditingAuto の場合、文書の左上隅から新しいセグメントの終点までの垂直距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの最初のコントロール ポイントまでの垂直距離をポイント単位で指定します。
X2省略可能です。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの 2 番目のコントロール ポイントまでの水平距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingAuto を指定した場合、この引数は使用できません。
Y2省略可能です。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの 2 番目のコントロール ポイントまでの水平距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingAuto を指定した場合、この引数は使用できません。
X3省略可能です。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの 2 番目のコントロール ポイントまでの水平距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingAuto を指定した場合、この引数は使用できません。
Y3省略可能です。単精度浮動小数点型 (Single) の値を使用します。新しい節点の引数 EditingType に msoEditingCorner を指定した場合、文書の左上隅から新しいセグメントの終点までの垂直距離をポイント単位で指定します。新しい節点の引数 EditingType に msoEditingAuto を指定した場合、この引数は使用できません。

次の使用例は、アクティブ文書で 3 番目の図形を選択し、その図形が Freeform オブジェクトかどうかチェックし、そうであればノードを挿入します。次の使用例では、アクティブ ワークシートに 3 つの図形があるものとします。


Sub InsertShapeNode()
    ActiveSheet.Shapes(3).Select
    With Selection.ShapeRange
        If .Type = msoFreeform Then
            .Nodes.Insert _
                Index:=3, SegmentType:=msoSegmentCurve, _
                EditingType:=msoEditingSymmetric, X1:=35, Y1:=100
            .Fill.ForeColor.RGB = RGB(0, 0, 200)
            .Fill.Visible = msoTrue
        Else
            MsgBox "この図形は、Freeform オブジェクトではありません。"
        End If
    End With
End Sub

※ドラッグ(スワイプ)すると全体を確認できます。

Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。

ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。

VBAのIE操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。

目次

VBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。