Range
- 構文
- Range = Range( Cell1, [Cell2] )
- 引数
- Cell1
- Cell2
- 戻値
- Rangeオブジェクト
記述例
単一セル
複数セル
例 |
説明 |
Range(“A1,B3”) |
A1セルとB3セル |
Range(“A1:D3”) |
A1セル〜D3セル |
Range(“A1:B2,D4:F6”) |
A1セル〜B2セル、D4セル〜F6セル |
Range(“A1″,”B4”) |
A1セル〜B4セル |
Range(Cells(3,1), Cells(5,6)) |
A1セル〜F5セル |
名前
例 |
説明 |
Range(“合計”) |
名前が”合計”のセル(範囲) |
行
例 |
説明 |
Range(“3:3”) |
3行目全体 |
Range(Rows(1), Rows(3)) |
1〜3行目 |
列
例 |
説明 |
Range(“F:F”) |
F列全体 |
Range(Columns(3), Columns(4)) |
3〜4列目 |
プログラム実行例
1〜12月の連続データを作成*
WITH EXCEL.Range("A1")
.Value = "1月"
.AutoFill(.Resize(12))
ENDWITH
2ヶ月毎の連続データを入力*
CONST xlColumns = 2
CONST xlChronological = 3
CONST xlMonth = 3
WITH EXCEL.Range("A1")
.Value = "2021/01/01"
.DataSeries(xlColumns, xlChronological, xlMonth, 2, "2021/12/31")
.EntireColumn.AutoFit
ENDWITH
セルの位置を取得*
現在選択されているセル情報を取得します。Book1シートのA1セルが選択されている状態で実行しています。
CONST xlA1 = 1
CONST xlR1C1 = -4150
WITH Excel.Application.Selection
PRINT "絶対参照<#TAB>" + .Address
PRINT "絶対参照(行)<#TAB>" + .Address(TRUE, FALSE)
PRINT "絶対参照(列)<#TAB>" + .Address(FALSE, TRUE)
PRINT "相対参照<#TAB>" + .Address(FALSE, FALSE)
PRINT "R1C1形式<#TAB>" + .Address(TRUE, TRUE, xlR1C1)
PRINT "外部参照<#TAB>" + .Address(TRUE, TRUE, xlR1C1, TRUE)
ENDWITH
- 結果
- 絶対参照 $A$1
絶対参照(行) A$1
絶対参照(列) $A1
相対参照 A1
R1C1形式 R1C1
外部参照 [Book1]Sheet1!R1C1
表を作成
// XlBordersIndex
CONST xlDiagonalDown = 5
CONST xlEdgeLeft = 7
CONST xlEdgeTop = 8
CONST xlEdgeBottom = 9
CONST xlEdgeRight = 10
// XlLineStyle
CONST xlDouble = -4119
CONST xlContinuous = 1
// XlBorderWeight
CONST xlThick = 4
DIM Excel = ExcelBoot()
WITH Excel
.Range("B2:F6").Borders.LineStyle = xlContinuous
.Range("B2:F6").BorderAround(xlContinuous, xlThick)
.Range("F2:F6").Borders(xlEdgeLeft).LineStyle = xlDouble
.Range("B6:F6").Borders(xlEdgeTop).LineStyle = xlDouble
.Range("B2").Borders(xlDiagonalDown).LineStyle = xlContinuous
WITH .Range("B2:B6").Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThick
ENDWITH
WITH .Range("B2:F2").Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThick
ENDWITH
ENDWITH
//////////////////////////////////////////////////
// 【引数】
// path : 開くファイルのパス名
// 【戻値】
// Excelオブジェクト
//////////////////////////////////////////////////
FUNCTION ExcelBoot(path = "")
DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
IFB path = "" THEN
Excel.Workbooks.Add
ELSE
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
IFB FSO.GetParentFolderName(path) = "" THEN
path = GET_CUR_DIR + "\" + path
ENDIF
Excel.Workbooks.Open(path)
ENDIF
RESULT = Excel
FEND
- 結果

解説
- 18行目
.Range("B2:F6").Borders.LineStyle = xlContinuous
セル範囲B2:F6に格子の罫線を引きます。
- 19行目
.Range("B2:F6").BorderAround(xlContinuous, xlThick)
セル範囲B2:F6に太線で外枠罫線を引きます。
- 20行目
.Range("F2:F6").Borders(xlEdgeLeft).LineStyle = xlDouble
セル範囲F2:F6に2本線の左罫線を引きます。
- 21行目
.Range("B6:F6").Borders(xlEdgeTop).LineStyle = xlDouble
セル範囲B6:F6に2本線の上罫線を引きます。
- 22行目
.Range("B2").Borders(xlDiagonalDown).LineStyle = xlContinuous
セルB2に左上から右下の斜線を引きます。
- 23-26行目
WITH .Range("B2:B6").Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThick
ENDWITH
セル範囲B2:B6に太線で右罫線を引きます。
- 27-30行目
WITH .Range("B2:F2").Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThick
ENDWITH
セル範囲B2:F2に太線で下罫線を引きます。
メソッド
- Activate
- 1つのセルをアクティブにします。セルは現在の選択範囲内にある必要があります。セルの範囲を選択するには、Selectメソッドを使用します。
- AddComment
- 指定してセルにコメントを設定する。
- AddCommentThreaded
- AdvancedFilter
- 検索条件範囲に基づいて、リストにフィルターをかけます。
- AllocateChanges
- OLAPデータソースに基づく範囲内の編集されたすべてのセルに書き戻し操作を実行します。
- ApplyNames
- 指定したセル範囲のセルに名前を付けます。
- ApplyOutlineStyles
- 指定された対象セル範囲にアウトラインの既定のスタイルを適用します。
- AutoComplete
- オートコンプリートのリストから、指定された文字列と適合する候補を返します。オートコンプリートが一致しない場合、またはリスト内の複数のエントリが完了する文字列と一致する場合
- AutoFill
- 指定された対象セル範囲内のセルに対してオートフィルを実行します。
- AutoFilter
- オートフィルターを使ってリストをフィルター処理します。
- AutoFit
- 範囲内の列の幅または範囲内の行の高さを変更して、最適な幅または高さにします。
- AutoOutline
- 指定したセル範囲にアウトラインを自動的に作成します。 指定されたセル範囲が 1 つのセルのときは、シート全体にアウトラインが作成されます。 既存のアウトラインはすべて、新しいア
- BorderAround
- 指定範囲に罫線を追加します。
- Calculate
- 開いているすべてのブック、ブック内の特定のワークシート、またはワークシートの指定された範囲のセルを計算します。
- CalculateRowMajorOrder
- 指定されたセル範囲を計算します。
- CheckSpelling
- オブジェクトのスペルをチェックします。
- Clear
- オブジェクト全体をクリアします。
- ClearComments
- 指定されたセル範囲からすべてのコメントを消去します。
- ClearContents
- 範囲内の数式と値をクリアします。
- ClearFormats
- オブジェクトの書式設定を削除します。
- ClearHyperlinks
- 指定された範囲からすべてのハイパーリンクを削除します。
- ClearNotes
- 指定されたセル範囲内のすべてのセルからコメントを削除します。
- ClearOutline
- 指定した範囲のアウトラインを消去します。
- ColumnDifferences
- オブジェクトを返すメソッドです。対象セル範囲内のセルと各列の比較セルで、内容の異なるすべてのセル(Rangeオブジェクト)を返します。
- Consolidate
- 複数のワークシートにある複数のセル範囲を、1枚のワークシートの1つのセル範囲に統合します。バリアント型(Variant)の値を使用します。
- ConvertToLinkedDataType
- 指定範囲内のすべてのセルを、株価や地理などのリンクされたデータ型に変換しようとします。
- Copy
- 範囲を、指定の範囲またはクリップボードにコピーします。
- CopyFromRecordset
- 指定された範囲の左上隅を始点として、ADOまたはDAOのRecordsetオブジェクトの内容をワークシートにコピーします。
- CopyPicture
- オブジェクトをクリップボードへピクチャ(画像)としてコピーします。バリアント型(Variant)。
- CreateNames
- シートの対象セル範囲内の文字列を使って、その指定された範囲の名前を作成します。
- Cut
- オブジェクトを切り取り、クリップボードまたは指定された範囲に貼り付けます。
- DataSeries
- 指定されたセル範囲に連続データを作成します。バリアント型(Variant)の値を使用します。
- DataTypeToText
- 範囲内のいずれかのセルが、[株価]や[地理] などのリンクされたデータ型の場合、この呼び出しは値をテキストに変換します。
- Delete
- オブジェクトを削除します。
- DialogBox
- ダイアログ ボックス定義テーブルで定義されているダイアログ ボックスを表示して、選択されたコントロールのインデックス番号を返します。 選択したコントロールの番号を返します。ユ
- Dirty
- 次の再計算が発生したときに再計算する範囲を指定します。
- DiscardChanges
- 編集されたセル範囲内のすべての変更を破棄します。
- EditionOptions
- Visual Basic のキーワードのヘルプを表示します。
- ExportAsFixedFormat
- 文書をPDF形式またはXPS形式で保存します。
- FillDown
- 指定された範囲の先頭のセルから範囲の下に向かって入力します。セル範囲の上端の行のセルの内容と書式がセル範囲中のほかのセルに複写されます。
- FillLeft
- 指定されたセル範囲の右端のセルを左方向のセル範囲に複写します。セル範囲の右端の列のセルの内容と書式がセル範囲中のほかのセルに複写されます。
- FillRight
- 指定されたセル範囲の左端のセルを右方向のセル範囲に複写します。セル範囲の左端の列のセルの内容と書式がセル範囲中のほかのセルに複写されます。
- FillUp
- 指定されたセル範囲の下端のセルを上方向のセル範囲に複写します。セル範囲の下端の行のセルの内容と書式がセル範囲中のほかのセルに複写されます。
- Find
- セル範囲内で特定の情報を検索します。
- FindNext
- Findメソッドによって開始された検索を続行します。前回の検索条件に一致するセルを、下方向(行のときは左から右、列のときは上から下)に検索し、見つかったセル(Rangeオブジェクト)を返します。選択範囲やアクティブセルには影響はありません。
- FindPrevious
- Findメソッドによって開始された検索を続行します。前回の検索条件に一致するセルを、上方向(行のときは右から左、列のときは下から上)に検索し、見つかったセル(Rangeオブジェクト)を返します。選択範囲またはアクティブセルには影響しません。
- FlashFill
- フラッシュフィル機能が有効になっていてアクティブになっている場合Trueを返します。
- FunctionWizard
- Group
- Rangeオブジェクトがピボットテーブルフィールドのデータ範囲内の単一セルを表す場合、Groupメソッドはそのフィールドで数値または日付ベースのグループ化を実行します。
- Insert
- ワークシートまたはマクロシートの指定された範囲に、空白のセルまたはセル範囲を挿入します。指定された範囲にあったセルはシフトされます。
- InsertIndent
- 指定した範囲のインデントを変更します。
- Justify
- 対象セル範囲内の文字列を、そのセル範囲に合わせて割り付けます。
- ListNames
- 定義されている名前のうち、非表示ではないすべての名前の一覧を、ワークシートに貼り付けます。対象セル範囲の先頭のセル以降に貼り付けます。
- Merge
- 指定したRangeオブジェクトから結合されたセルを作成します。
- NavigateArrow
- 指定した範囲のトレース矢印をたどって、参照元のセル、参照先のセル、またはエラーの発生したセルに移動します。参照元、参照先、またはエラーのセルを選択し、新しい選択範囲を表すRangeオブジェクトを返します。指定されたセルにトレース矢印が表示されていないときは、エラーを返します。
- NoteText
- 範囲の左上隅のセルに関連付けられているセルのメモを設定または返します。値の取得と設定が可能な文字列型(String)の値です。セルのメモは、範囲のコメントに置き換えられています。
- Parse
- 指定セル範囲内のデータを分割して、複数のセルに入力します。分割元セル範囲内のデータは、互いに隣接する複数の列のセル範囲に分配されます。分割元として指定できるセル範囲は、1つの列内のセル範囲に限られます。
- PasteSpecial
- 指定された範囲にコピーされたRangeオブジェクトを貼り付けます。
- PrintOut
- オブジェクトを印刷します。
- PrintPreview
- オブジェクトの印刷プレビュー(印刷時のイメージ)を表示します。
- RemoveDuplicates
- 値の範囲から重複した値を削除します。
- RemoveSubtotal
- Replace
- 指定されたセル範囲内のセルの文字を示すブール型(Boolean)の値を返します。このメソッドを使用しても、選択範囲またはアクティブセルのどちらも変更されません。
- RowDifferences
- オブジェクトを返すメソッドです。対象セル範囲内のセルを比較して、各行の比較セルから内容が異なるすべてのセル(Rangeオブジェクト)を返します。
- Run
- 指定されたセル範囲にあるExcelのマクロを実行します。セル範囲はマクロシートである必要があります。
- Select
- オブジェクトを選択します。
- SetCellDataTypeFromCell
- SetPhonetic
- 指定された範囲内すべてのセルにPhoneticオブジェクトを作成します。
- Show
- 指定範囲が可視位置に来るようにアクティブ ウィンドウの内容をスクロールします。範囲には、作業中のドキュメントの単一のセルを指定します。
- ShowCard
- ShowDependents
- ShowErrors
- ShowPrecedents
- Sort
- 値の範囲を並べ替えます。
- SortSpecial
- Speak
- 範囲内のセルを、行順または列順に読み上げます。
- SpecialCells
- 指定した種類と値に一致するすべてのセルを表すRangeオブジェクトを返します。
- SubscribeTo
- Subtotal
- セル範囲の集計を作成します。指定されたセル範囲が単一セルのときは、アクティブセル領域を集計します。
- Table
- ワークシートで定義した入力値と数式に基づいて、データテーブルを作成します。
- TextToColumns
- セルに入力されているデータ(1つのセル内で、カンマ、スペース、タブなどで区切られたデータ)を、複数の列に区切ります。対象となる列は1列だけです。
- Ungroup
- セル範囲のアウトラインレベルを上げます(行、列のアウトライン レベルの番号は減ります)。指定する範囲は、1行全部か1列全部、または複数の行全体や列全体である必要があります。ピボットテーブルレポートの中のセル範囲の場合、このメソッドはセル範囲に含まれているアイテムのグループを解除します。
- UnMerge
- 結合された領域をそれぞれのセルに分割します。
プロパティ
- AddIndent
- Address
- 参照範囲を表す文字列型(String)の値を返します。
- AddressLocal
- AllowEdit
- Application
- Areas
- Borders
- Cells
- Characters
- Column
- Columns
- ColumnWidth
- Comment
- CommentThreaded
- Count
- CountLarge
- Creator
- CurrentArray
- CurrentRegion
- 現在の領域を表すRangeオブジェクトを返します。
- Dependents
- DirectDependents
- DirectPrecedents
- DisplayFormat
- End
- 対象セル範囲の領域における終端のRangeオブジェクトへの参照を返します。
- EntireColumn
- 指定された範囲を含む1つまたは複数の列全体を表すRangeオブジェクトを返します。読み取り専用です。
- EntireRow
- 指定されたセル範囲を含む行全体を表すRangeオブジェクトを返します。読み取り専用です。
- Errors
- Font
- FormatConditions
- Formula
- FormulaArray
- FormulaHidden
- FormulaLocal
- FormulaR1C1
- FormulaR1C1Local
- HasArray
- HasFormula
- HasRichDataType
- Height
- Hidden
- HorizontalAlignment
- Hyperlinks
- ID
- IndentLevel
- Interior
- Item
- 指定したセル範囲のオフセット値で指定される範囲を表すRangeオブジェクトを返します。
- Left
- LinkedDataTypeState
- ListHeaderRows
- ListObject
- LocationInTable
- Locked
- MDX
- MergeArea
- MergeCells
- Name
- オブジェクトの名前を表すバリアント型(Variant)の値を取得、または設定します。
- Next
- NumberFormat
- NumberFormatLocal
- Offset
- 指定された範囲からオフセットした範囲を表すRangeオブジェクトを返します。
- Orientation
- OutlineLevel
- PageBreak
- Parent
- Phonetic
- Phonetics
- PivotCell
- PivotField
- PivotItem
- PivotTable
- Precedents
- PrefixCharacter
- Previous
- QueryTable
- Range
- ReadingOrder
- Resize
- 指定された範囲のサイズを変更します。サイズが変更されたセル範囲(Rangeオブジェクト)を返します。
- Row
- RowHeight
- Rows
- ServerActions
- ShowDetail
- ShrinkToFit
- SoundNote
- SparklineGroups
- Style
- Summary
- Text
- Top
- UseStandardHeight
- UseStandardWidth
- Validation
- Value
- Value2
- VerticalAlignment
- Width
- Worksheet
- WrapText
- XPath