GETOLEITEM関数

本ページには広告が含まれています。

引数に指定したコレクションからオブジェクトを取得し配列に格納します。

構文
  1. Integer = GETOLEITEM( コレクション名 )
引数
コレクション名 (String)必須
COMオブジェクト.コレクション名
戻り値

取得したコレクションの数

取得した物は配列変数の ALL_OLE_ITEM[ ] に格納される (配列はゼロから)

コレクションとは

Workbooks オブジェクトWorksheets オブジェクトのようにオブジェクトをまとめて格納したものをコレクションと言います。

COMオブジェクトのコレクションはプロパティにItemとCountを必ず持ちます。

GETOLEITEM(コレクション名)で返す配列(ALL_OLE_ITEM)は「コレクション名.Item(Index)」で取得するものと同等で、コレクション内のオブジェクトが1つずつ格納されています。

例えばGETOLEITEM(Worksheets)と記述した場合、ALL_OLE_ITEM(Index)にはWorksheetオブジェクトが格納されます。

Indexの範囲は0からGETOLEITEM(コレクション)-1の範囲となります。

GETOLEITEM以外での記述方法

GETOLEITEMと同じように取得する他の記述方法を記載しています。

以下はExcelを起動し全シートを取得する例です。

UWSC
DIM Excel = ExcelBoot()
DIM Worksheets = Excel.Worksheets

PRINT "◇GETOLEITEM"

FOR i = 0 TO GETOLEITEM(Worksheets) - 1
	PRINT ALL_OLE_ITEM[i].Name
NEXT

PRINT
PRINT "◇Item・Count"

FOR i = 1 TO Worksheets.Count
	PRINT Worksheets.Item(i).Name
NEXT

PRINT
PRINT "◇FOR-IN-NEXT"

FOR Worksheet IN Worksheets
	PRINT Worksheet.Name
NEXT

//////////////////////////////////////////////////
// 【引数】
//   path : 開くファイルのパス名 
// 【戻り値】
//   
//////////////////////////////////////////////////
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
結果
プレーンテキスト
◇GETOLEITEM
Sheet1
Sheet2
Sheet3

◇Item・Count
Sheet1
Sheet2
Sheet3

◇FOR-IN-NEXT
Sheet1
Sheet2
Sheet3

関連記事

CALCARRAY関数 (スクリプト関数)
配列の合計値・最小値・最大値・平均値を求めます。
GETALLWIN関数 (スクリプト関数)
全ウィンドウのIDを取得します。
JOIN関数 (スクリプト関数)
引数に指定した配列を結合し文字列を返します。
LENGTH関数 (スクリプト関数)
SETCLEAR関数 (スクリプト関数)
配列のすべての要素を任意の値で埋めます。
SHIFTARRAY関数 (スクリプト関数)
配列を指定した値だけシフトします。プラス値で後方、マイナス値で前方にシフトします。
POPUPMENU関数 (スクリプト関数)
ポップアップメニューを表示し、引数に指定した配列の中から選択された項目の要素番号を取得します。選択された項目を取得したい場合は、POPUPMENUの戻値を引数に指定した配列の要素番号として指定します。
連想配列
連想配列とは、自動的に割り当てられる数字をキーとして持つかわりに、自由に任意の文字列を割り振ることができる配列のことです。添え字に番号の変わりに名前をつけることでわかりやすく管理することができます。
divisors (自作関数)
引数に指定した数値の約数をリストを配列で返します。
Collatz (自作関数)
コラッツ数列を求め結果を配列で返します。