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