Range

タグ:

セルまたはセル範囲を表すRangeオブジェクトを返します。

構文
Range = Application.Range( Cells1, [Cells2] )
引数
Cells1
範囲を指定します。範囲名には、範囲を表す演算子「:」、共通部分を表すスペース「 」、または複数の範囲を表す演算子「,」を使うことができます。
Cells2
セル範囲の左上隅と右下隅のセルを指定します。
戻り値
セルまたはセル範囲を表すRangeオブジェクトを返します。

セルの指定例

入力例 説明
Range(“A1”) セルA1
Range(“A1,B2”) セルA1とセルB2
Range(“A1:B2”) セル範囲A1:B2
Range(“A1”, “B2”) セル範囲A1:B2
Range(“A1:B2,C3:D4”) セル範囲A1:B2とセル範囲C3:D4
Range(“1:3”) 行1~行3
Range(“A:C”) 列A~列C

プログラム実行例

セルに文字列を入力(A1形式)

DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE

ID = GETID("Microsoft Excel")
CTRLWIN(ID, ACTIVATE)

Excel.Workbooks.Add()
Excel.Range("A1").Value = "UWSC"

// Excel.DisplayAlerts = FALSE
// Excel.Quit
  1. CREATEOLEOBJ
  2. Visible
  3. GETID
  4. CTRLWIN
  5. Workbooks.Add メソッド
  6. Application.Range プロパティ
  7. Range.Value プロパティ
  8. Application.DisplayAlerts プロパティ
解説
  1. 1-2行目
    DIM Excel = CREATEOLEOBJ("Excel.Application")Excel.Visible = TRUE
    Excelを起動する。
  2. 4-5行目
    ID = GETID("Microsoft Excel")CTRLWIN(ID, ACTIVATE)
    Excelをアクティブ化する。
  3. 7行目
    Excel.Workbooks.Add()
    新規ブックの作成。
  4. 8行目
    Excel.Range("A1").Value = "UWSC"
    セルA1に「UWSC」と代入。
  5. 10行目
    // Excel.DisplayAlerts = FALSE
    終了時に確認メッセージを表示しない。
  6. 11行目
    // Excel.Quit
    Excelを終了する。

人口の上位3位取得

上位3位まで赤文字にする。

使ったファイルのダウンロードは下記リンクからできます。

DIM Excel = ExcelBoot("都道府県別人口.xlsx")

CONST xlDown = -4121
CONST xlTop10Top = 1

WITH Excel
	.Range("A:E").EntireColumn.AutoFit
	FOR col = 3 TO 5
		DIM Top10 = .Range(.Cells(2, col), .Cells(48, col)).FormatConditions.AddTop10
		WITH Top10
			.Rank = 3
			.TopBottom = xlTop10Top
			.Font.Color = 255
			.Font.Bold = TRUE
		ENDWITH
	NEXT
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
  1. ExcelBoot
  2. Excel.Range.EntireColumn.AutoFit
  3. Application.Range プロパティ
  4. Application.Cells プロパティ
  5. Excel.Range.FormatConditions
  6. FormatConditions オブジェクト
  7. Excel.FormatConditions.AddTop10
  8. Excel.Top10.Rank
  9. Excel.Top10.TopBottom
  10. Excel.Top10.Font
  11. Excel.Font.Color
  12. Font.Bold プロパティ
結果

関連記事

Application.ActiveCell プロパティ (Excel)
アクティブな1つのセルを表すRangeオブジェクトを取得します。
Application.Cells プロパティ (Excel)
作業中のワークシートのすべてのセルを表すRangeオブジェクトを返します。
Range.Merge メソッド (Excel)
指定したRangeオブジェクトから結合されたセルを作成します。
Range.UnMerge メソッド (Excel)
結合された領域をそれぞれのセルに分割します。
Range.Borders プロパティ (Excel)
セルの罫線を表します。
Range.Columns プロパティ (Excel)
指定した範囲の列を表すRangeオブジェクトを返します。
Range.Count プロパティ (Excel)
コレクションに含まれるオブジェクトの数を返します。
Range.CurrentRegion プロパティ (Excel)
現在の領域を表すRangeオブジェクトを返します。
Range.MergeCells プロパティ (Excel)
セルの結合状態を設定または取得します。値を指定しなかった場合は結合状態を取得します。
Range.Rows プロパティ (Excel)
指定した範囲の行を表すRangeオブジェクトを返します。