- 08/14/2019
- 9分読み取り
-
- o
- M
- L
- m
- o
-
+4
は、セル、行、列、一つ以上の連続したセルブロックを含むセルの選択、または3d範囲を表します。,
注
複数のプラットフォームにわたってOfficeエクスペリエンスを拡張するソリューションの開発に興味がありますか? 新しいOfficeアドインモデルをチェックしてください。 OfficeアドインはVSTOアドインやソリューションに比べてフットプリントが小さく、HTML5、JavaScript、CSS3、XMLなどのほぼすべてのwebプログラミングテクノロジを使用し
備考
Rangeのデフォルトメンバーは、パラメーターなしの呼び出しをValueプロパティに転送し、パラメーターなしの呼び出しをItemメンバーに転送します。, Accordingly, someRange = someOtherRange
is equivalent to someRange.Value = someOtherRange.Value
, someRange(1)
to someRange.Item(1)
and someRange(1,1)
to someRange.Item(1,1)
.,Rangeオブジェクトのプロパティ
Example
単一のセルまたはセルの範囲を表すrangeオブジェクトを返すには、Range(arg)を使用します。, 次の例では、セルA1の値をセルA5に配置します。
Worksheets("Sheet1").Range("A5").Value = _ Worksheets("Sheet1").Range("A1").Value
次の例では、範囲内の各セルに数式を設定することにより、範囲A1:H8を乱数で埋めます。 オブジェクト修飾子(ピリオドの左側にあるオブジェクト)なしで使用すると、Rangeプロパティはアクティブなシート上の範囲を返します。 もし、アクティブなシートなワークシート方法に失敗します。
をご利用の起動方法は、ワークシートオブジェクトを起動するワークシートをご利用の際には、範囲な明示的なオブジェクト予定です,
Worksheets("Sheet1").Activate Range("A1:H8").Formula = "=Rand()" 'Range is on the active sheet
次の例では、Criteriaという名前の範囲の内容をクリアします。
メモ
範囲アドレスにテキスト引数を使用する場合は、A1形式の表記法でアドレスを指定する必要があります(R1C1形式の表記法は使用できません)。
Worksheets(1).Range("Criteria").ClearContents
ワークシート上のセルを使用して、ワークシート上のすべての単一セルからなる範囲を取得します。 Item(row,column)を介して単一のセルにアクセスできます。rowは行インデックス、columnは列インデックスです。,Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。次の例では、アクティブなブックの最初のシートのセルA1の値を24に設定し、セルB1の値を42に設定します。
Worksheets(1).Cells(1, 1).Value = 24Worksheets(1).Cells.Item(1, 2).Value = 42
次の例では、セルA2の数式を設定します。
ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)"
Range("A1")
を使用してセルA1を返すこともできますが、行または列に変数を使用できるため、Cellsプロパティがより便利 次の例では、Sheet1に列見出しと行見出しを作成します。, ワークシートがアクティブ化された後、Cellsプロパティは明示的なシート宣言なしで使用できます(アクティブなシート上のセルを返します)。
注意
Visual Basicの文字列関数を使用してA1スタイルの参照を変更できますが、Cells(1, 1)
表記を使用する方が簡単です(プログラミング
Use_expression_.Cellsは、expressionがRangeオブジェクトを返す式であり、単一のセルからなる同じアドレスを持つ範囲を取得します。,このような範囲では、範囲の最初の領域の左上隅を基準にしたItem(row,column)を介して単一のセルにアクセスします。Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。次の例では、アクティブなブックの最初のシートのセルC5およびD5の数式を設定します。
Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()"Worksheets(1).Range("C5:C10").Cells.Item(1, 2).Formula = "=Rand()"
Rangeオブジェクトを返すには、Range(cell1,cell2)を使用します。cell1とcell2は、開始セルと終了セルを指定するRangeオブジェクトです。 次の例では、セルA1:J10の境界線のスタイルを設定します。,
注意
前のWithステートメントの結果をCellsプロパティに適用する場合は、Cellsプロパティの各オカレンスの前のピリオドが必要であることに注意してください。 この場合、セルがワークシート上にあることを示します(ピリオドなしでは、Cellsプロパティはアクティブなシート上のセルを返します)。
With Worksheets(1) .Range(.Cells(1, 1), _ .Cells(10, 10)).Borders.LineStyle = xlThick End With
ワークシート上の行を使用して、ワークシート上のすべての行からなる範囲を取得します。 Item(row)を介して単一の行にアクセスできます。rowは行インデックスです。,Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。
注
行で構成される範囲にItemの二番目のパラメータを指定することは合法ではありません。 まず、セルを介して単一のセルに変換する必要があります。
次の例では、アクティブなブックの最初のシートの行4および10を削除します。
Worksheets(1).Rows(10).DeleteWorksheets(1).Rows.Item(5).Delete
ワークシート上の列を使用して、ワークシート上のすべての列からなる範囲を取得します。, 単一の列にアクセスできますItem(row)ここで、rowは数値またはA1スタイルの列アドレスとして指定された列インデックスです。Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。
注
列からなる範囲にItemの二番目のパラメータを指定することは合法ではありません。 まず、セルを介して単一のセルに変換する必要があります。
次の例では、アクティブなブックの最初のシートの列”B”、”C”、”E”、および”J”を削除します。
Use_expression_。,ここで、expressionはRangeオブジェクトを返す式であり、範囲の最初の領域の行からなる範囲を取得します。Item(row)を介して単一の行にアクセスできます。rowは、範囲の最初の領域の先頭からの相対行インデックスです。Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。
注
行で構成される範囲にItemの二番目のパラメータを指定することは合法ではありません。 まず、セルを介して単一のセルに変換する必要があります。,
次の例では、アクティブなブックの最初のシートの範囲C8:D8およびC6:D6を削除します。
Worksheets(1).Range("C5:D10").Rows(4).DeleteWorksheets(1).Range("C5:D10").Rows.Item(2).Delete
Use_expression_。ここで、expressionはRangeオブジェクトを返す式であり、範囲の最初の領域の列からなる範囲を取得します。ここで、rowは、数値またはA1スタイルの列アドレスとして指定された範囲の最初の領域の左側からの相対列インデックスです。Rangeのデフォルトメンバーによって呼び出しが転送されるため、Itemは省略できます。,
注
列からなる範囲にItemの二番目のパラメータを指定することは合法ではありません。 まず、セルを介して単一のセルに変換する必要があります。
次の例では、アクティブなブックの最初のシートの範囲L2:L10、G2:G10、F2:F10、およびD2:D10を削除します。
Offset(row,column)を使用して、指定されたオフセットの範囲を別の範囲に返します。, 次の例では、現在の選択範囲の左上隅にあるセルの右側にあるセルを三行下に選択し、一つの列を選択します。 アクティブなシートにないセルは選択できないため、最初にワークシートを有効にする必要があります。
Worksheets("Sheet1").Activate 'Can't select unless the sheet is active Selection.Offset(3, 1).Range("A1").Select
ユニオンを使用します(range1、range2、。.. 複数の領域範囲、つまり、二つ以上の連続したセルブロックで構成される範囲を返します。 次の例では、範囲A1:B2とC3:D4の和集合として定義されたオブジェクトを作成し、定義された範囲を選択します。,
複数の領域を含む選択範囲を操作する場合は、Areasプロパティが便利です。 複数領域選択を個々の範囲オブジェクトに分割し、そのオブジェクトをコレクションとして返します。 次の例に示すように、返されたコレクションのCountプロパティを使用して、複数の領域を含む選択範囲を確認できます。
Sub NoMultiAreaSelection() NumberOfSelectedAreas = Selection.Areas.Count If NumberOfSelectedAreas > 1 Then MsgBox "You cannot carry out this command " & _ "on multi-area selections" End If End Sub
この例では、RangeオブジェクトのAdvancedFilterメソッドを使用して、列Aの範囲内で一意の値とそれらの一意の値が発生する回数のリストを作成します。,アイテム
Leave a Reply