SSpread.CellTypeプロパティ

 

スプレッドシート全体や行、列、セル、セルブロックのセルのデータ型を設定します。

 

このプロパティを設定する前に、ColRowプロパティなどを使用して処理の対象を指定します。

 

以下の値を指定します。初期値は、通常のセルは$CellTypeEdit、列ヘッダ、行ヘッダのセルは$CellTypeStaticTextです。

定数

説明

$CellTypeDate

0

日付型

$CellTypeEdit

1

文字型

$CellTypePic

4

マスク型

$CellTypeStaticText

5

ラベル型

$CellTypeTime

6

時刻型

$CellTypeButton

7

コマンドボタン型

$CellTypeComboBox

8

コンボボックス型

$CellTypePicture

9

ピクチャ型

$CellTypeCheckBox

10

チェックボックス型

$CellTypeCurrency

12

通貨型

$CellTypeNumber

13

数値型

$CellTypePercent

14

パーセント型

$CellTypeScientific

15

指数型

 

 

使用例

Col = 2;
Row = 3;
CellType = $CellTypeDate;
TypeDateFormat = $TypeDateFormatGEEMMDD;
 
BlockMode = $TRUE;
Col = 3;
Row = 3;
Col2 = 5;
Row2 = 5;
CellType = $CellTypeNumber;
TypeNumberDecPlaces = 0;
BlockMode = $FALSE;

 

セルのデータ型ごとの関連プロパティ

 

セルのデータ型ごとに固有の設定を行うために、以下の関連プロパティがあります。

日付型

文字型

マスク型

ラベル型

時刻型

TypeDateCentury

TypeDateFormat

TypeDateMax

TypeDateMin

TypeDateSeparator

TypeEllipses

TypeHAlign

TypeSpin

TypeTextOrient

TypeVAlign

 

TypeEditCharCase

TypeEditCharSet

TypeEditMultiLine

TypeEditPassword

TypeEllipses

TypeHAlign

TypeMaxEditLen

TypeTextOrient

TypeVAlign

 

TypeEllipses

TypeHAlign

TypePicDefaultText

TypePicMask

TypeTextOrient

TypeVAlign

 

TypeEllipses

TypeHAlign

TypeTextOrient

TypeTextPrefix

TypeTextShadow

TypeTextShadowIn

TypeTextWordWrap

TypeVAlign

 

TypeEllipses

TypeHAlign

TypeSpin

TypeTextOrient

TypeTime24Hour

TypeTimeMax

TypeTimeMin

TypeTimeSeconds

TypeTimeSeparator

TypeVAlign

 

コマンドボタン型

コンボボックス型

ピクチャ型

チェックボックス型

 

TypeButtonAlign

TypeButtonColor

TypeButtonDarkColor

TypeButtonLightColor

TypeButtonPicture

TypeButtonPictureDown

TypeButtonShadowSize

TypeButtonText

TypeButtonTextColor

TypeButtonType

 

TypeComboBoxAutoSearch

TypeComboBoxCount

TypeComboBoxCurSel

TypeComboBoxEditable

TypeComboBoxIndex

TypeComboBoxList

TypeComboBoxMaxDrop

TypeComboBoxString

TypeComboBoxWidth

TypeHAlign

TypeMaxEditLen

TypeVAlign

 

以下はメソッド

TypeComboBoxClear

TypeComboBoxRemoveItem

 

TypeHAlign

TypePictCenter

TypePictMaintainScale

TypePictPicture

TypePictStretch

TypeVAlign

 

TypeCheckCenter

TypeCheckPicture

TypeCheckText

TypeCheckTextAlign

TypeCheckType

TypeHAlign

TypeVAlign

 

通貨型

数値型

パーセント型

指数型

TypeCurrencyDecimal

TypeCurrencyDecPlaces

TypeCurrencyLeadingZero

TypeCurrencyMax

TypeCurrencyMin

TypeCurrencyNegStyle

TypeCurrencyPosStyle

TypeCurrencySeparator

TypeCurrencyShowSep

TypeCurrencyShowSymbol

TypeCurrencySymbol

TypeEllipses

TypeHAlign

TypeNegRed

TypeSpin

TypeSpinInc

TypeSpinWrap

TypeTextOrient

TypeVAlign

 

TypeEllipses

TypeHAlign

TypeNegRed

TypeNumberDecimal

TypeNumberDecPlaces

TypeNumberLeadingZero

TypeNumberMax

TypeNumberMin

TypeNumberNegStyle

TypeNumberSeparator

TypeNumberShowSep

TypeSpin

TypeSpinInc

TypeSpinWrap

TypeTextOrient

TypeVAlign

 

TypeEllipses

TypeHAlign

TypeNegRed

TypePercentDecimal

TypePercentDecPlaces

TypePercentLeadingZero

TypePercentMax

TypePercentMin

TypePercentNegStyle

TypeSpin

TypeSpinInc

TypeSpinWrap

TypeTextOrient

TypeVAlign

 

TypeEllipses

TypeHAlign

TypeNegRed

TypeScientificDecimal

TypeScientificDecPlaces

TypeScientificMax

TypeScientificMin

TypeTextOrient

TypeVAlign

 

 

セルのデータ型ごとのプロパティ継承

 

名前が"Type"で始まる関連プロパティは、セルのデータ型ごとに最後に設定した内容が記憶され、次回以降の同じデータ型のセルへの設定時にプロパティが継承されます。

例えば、日付型($CellTypeDate)を設定した後に、TypeDateMaxプロパティやTypeDateMinプロパティを設定すると、それ以降に作成する日付型セルは同じ設定が引き継がれます。

関連するプロパティの初期値は、セルのデータ型ごとに記憶されます。複数のデータ型で使用するTypeHAlignプロパティ、TypeVAlignプロパティなども、データ型ごとに別々に管理されます。

記憶された設定は、それ以降のセルのデータ型に関する設定時にまとめて適用されます。この機能は、複数のセルに同一の設定をする場合には便利ですが、異なる設定をする場合には注意が必要です。

 

・動作イメージ

 

(1) 関連プロパティの値をデータ型ごとに保持している。

 

日付型

 

 

 

TypeDateCentury = $FALSE;

TypeDateMax = "20991231";

TypeDateMin = "19000101";

TypeSpin = $FALSE;

TypeHAlign = $TypeHAlignLeft;

TypeVAlign = $TypeVAlignTop;

        :

数値型

 

 

 

 

 

 

 

 

 

 

 

 

(2) CellTypeプロパティへの設定時は、設定するデータ型に対応する(1)の内容をすべて同時に設定する。

 

CellType = $CellTypeDate;
 

日付型

 

 

 

対象セルにすべてを設定する

 

TypeDateCentury = $FALSE;

TypeDateMax = "20991231";

TypeDateMin = "19000101";

TypeSpin = $FALSE;

TypeHAlign = $TypeHAlignLeft;

TypeVAlign = $TypeVAlignTop;

        :

 

(3) "Type"で始まる関連プロパティへの設定時は、(1)を更新したあと (1)の内容をすべて同時に設定する。

 

TypeDateMin = "19500101";
 

日付型

 

 

 

対象セルにすべてを設定する

 

TypeDateCentury = $FALSE;

TypeDateMax = "20991231";

TypeDateMin = "19500101";

TypeSpin = $FALSE;

TypeHAlign = $TypeHAlignLeft;

TypeVAlign = $TypeVAlignTop;

        :

 

 

プログラム例

 

Col = 1; /* 11セルを設定 */
Row = 1;
CellType = $CellTypeDate;    /* 日付型に設定 */
TypeDateMin = "19500101";    /* 日付範囲の始まりを1950/01/01に設定 */
TypeDateMax = "20501231";    /* 日付範囲の終わりを2050/12/31に設定 */
print(Col, Row, TypeDateMin, TypeDateMax, "\n");
 
Col = 2; /* 22セルを設定 */
Row = 2;
CellType = $CellTypeDate;    /* 日付型に設定(日付範囲も列11セルと同じ(1950/01/012050/12/31)になる) */
print(Col, Row, TypeDateMin, TypeDateMax, "\n");
 
Col = 3; /* 33セルを設定 */
Row = 3;
CellType = $CellTypeDate;    /* 日付型に設定(この時点では日付範囲は列11、列22セルと同じ) */
TypeDateMin = "20000101";    /* 日付範囲の始まりを2000/01/01に設定(日付範囲は2000/01/012050/12/31になる) */
print(Col, Row, TypeDateMin, TypeDateMax, "\n");
 
Col = 4; /* 44セルを変更 */
Row = 4;
CellType = $CellTypeDate;    /* 日付型に設定(日付範囲は列33セルと同じ(2000/01/012050/12/31)になる) */
print(Col, Row, TypeDateMin, TypeDateMax, "\n");
 
/* 注意が必要な設定例 */
Col = 1; /* 再度、列11セルを変更 */
Row = 1;
/* この時点では元の設定通り(1950/01/012050/12/31) */
print(Col, Row, TypeDateMin, TypeDateMax, "\n"); 
 
TypeDateMax = "20001231";    /* 1つ前の日付型の設定(列44セルの設定)が初期値になるため、元の設定はすべて上書きされる */
                             /* その結果、TypeDateMinの値も変更され、日付範囲は2000/01/012000/12/31になる */
print(Col, Row, TypeDateMin, TypeDateMax, "\n"); 

 

セルブロックへの適用時のプロパティ継承の注意点

 

BlockMode$TRUEにしてセルブロックへの設定の適用をする場合、ColRowプロパティが指すセルを基準に各プロパティが設定されます。

例えば、ColRowプロパティの指すセルがコンボボックス型セルの場合は、セルブロック内のセルはすべてコンボボックス型セルに変更され、同じ設定が適用されます。

多くのデータ型で共通であるTypeHAlignTypeVAlignプロパティなどの変更でも、セルのデータ型も含めてすべて同じ設定になるので注意してください。

 

コンボボックス型セルのプロパティ継承の注意点

 

コンボボックス型セルでは、リスト項目を操作する以下のプロパティやメソッドは、プロパティ継承の対象になりません。

TypeComboBoxCurSelプロパティ

TypeComboBoxListプロパティ

TypeComboBoxStringプロパティ

TypeComboBoxClearメソッド

TypeComboBoxRemoveItemメソッド

これらを使用したリスト項目の操作は、CellTypeプロパティや"Type"で始まるコンボボックス型セルの関連プロパティへの設定に影響を与えません。

 

TypeComboBoxCountプロパティは読取専用なので、プロパティ継承の対象になりません。

TypeComboBoxIndexプロパティは変数としてのみ機能するため、セルの状態とは無関係に値を1つだけ保持します。

 

ラベル型セルのプロパティ継承の注意点

 

ラベル型セルは、通常のセルと列ヘッダ、行ヘッダのセルで初期値が異なるため、プロパティ継承のためのデータを別々に保持しています。

 

ラベル型

 

ラベル型(ヘッダ用)

TypeTextPrefix = $FALSE;

TypeTextShadow = $FALSE;

TypeTextWordWrap = $FALSE;

TypeHAlign = $TypeHAlignLeft;

TypeVAlign = $TypeVAlignTop;

        :

TypeTextPrefix = $FALSE;

TypeTextShadow = $TRUE;

TypeTextWordWrap = $TRUE;

TypeHAlign = $TypeHAlignCenter;

TypeVAlign = $TypeVAlignCenter;

        :

 

"Type"で始まるラベル型セルの関連プロパティへの設定は、この両方のデータが更新されます。セルへの設定はそれぞれのデータが使用されます。

 

TypeHAlign = $TypeHAlignRight;
 

ラベル型

 

ラベル型(ヘッダ用)

TypeTextPrefix = $FALSE;

TypeTextShadow = $FALSE;

TypeTextWordWrap = $FALSE;

TypeHAlign = $TypeHAlignRight;

TypeVAlign = $TypeVAlignTop;

        :

TypeTextPrefix = $FALSE;

TypeTextShadow = $TRUE;

TypeTextWordWrap = $TRUE;

TypeHAlign = $TypeHAlignRight;

TypeVAlign = $TypeVAlignCenter;

        :

通常のセルに設定

 

列ヘッダ、行ヘッダの

セルに設定

 

コマンドボタン型、コンボボックス型セルの表示について

 

コマンドボタン型、コンボボックス型セルでは、通常は常にコマンドボタンやコンボボックスが表示されますが、ButtonDrawModeプロパティの設定でアクティブセルの位置によって表示/非表示を制御できます。

 

OperationModeプロパティでスプレッドシートを行単位で扱うモード(RowSingleMultiExtended)が指定されている場合は、コマンドボタンやコンボボックスは表示されません。行モード($OperationModeRow)については、行が編集状態のときだけコマンドボタンやコンボボックスが表示されます。

読み出し専用モード($OperationModeRead)では、コマンドボタンやコンボボックスは表示はされますが使用できません。

コマンドボタン型、コンボボックス型セルについては、標準モード($OperationModeNormal)または行モード($OperationModeRow)で使用してください。

 



「オンラインマニュアル」一覧へ戻る
「Bizの宝箱」TOPへ戻る