API version 2

- ‐

clipboardPaste

クリップボードの内容を選択範囲の左上を基準として貼り付けます。

copyable プロパティの設定とは無関係にクリップボードに貼り付け可能なデータが入っている場合は貼り付けが実行されます。

選択範囲が複数ある場合や、貼り付ける範囲の内と外にまたがった結合されたセルがある場合は例外が発生します。


貼り付ける範囲より選択範囲の方が大きい場合、貼り付ける範囲の他の部分のセルはクリアされます。

CLIPBOARDPASTEOPTIONS_OVERFLOWSELECTIONが指定された場合、クリップボードに保持されている範囲が選択範囲より大きい場合、選択範囲はクリップボードの範囲にあわせて自動的に拡張されます。

CLIPBOARDPASTEOPTIONS_TILINGPASTEが指定された場合、選択範囲がクリップボードに保持されている範囲よりも大きい場合、クリップボードの内容を繰り返し貼り付けます。選択範囲が行/列方向にクリップボードに保持されている範囲よりも小さい場合はクリップボードに保持されている範囲の行/列数に拡張されます。

クリップボード経由のデータのやり取りでは Spread オブジェクト同士の場合は MODIFY_ALLならスタイルを含めたデータが、MODIFY_VALUEの時は値のみがやり取りされますが、 それ以外の場合はタブ区切りテキスト形式となります。

タブ区切りテキストの場合で、セルの合成スタイルがSpreadStyleTextまたはSpreadStyleComboBoxの場合は、合成スタイルのsubTypeに基づいて、貼り付けるテキストからの型推定が行われます(セル編集時と同様)。

合成スタイルのsubType

テキストの内容

value 設定型

value 設定値

Integer

数字列(小数点なし)

Integer

テキストが示す数値

数字列(小数点あり)

整数に切り捨て

日付・時刻表示

日付に対応するシリアル数値

上記以外

String

テキストそのまま

Number

数字列(小数点なし)

Number

テキストが示す数値

数字列(小数点あり)

日付・時刻表示

日付時刻に対応するシリアル数値

上記以外

String

テキストそのまま

Fixed

数字列(小数点なし)

Fixed

テキストが示す数値

数字列(小数点あり)

日付・時刻表示

日付時刻に対応するシリアル数値

上記以外

String

テキストそのまま

Date

数字列(小数点なし)

Date

シリアルに対応する日付

数字列(小数点あり)

シリアルに対応する日付時刻

日付・時刻表示

テキストが示す日付時刻

上記以外

String

テキストそのまま

Number

数字列(小数点なし)

String

テキストそのまま

数字列(小数点あり)

日付・時刻表示

上記以外

上記以外

数字列(小数点なし)

Integer

テキストが示す数値

数字列(小数点あり)

Number

テキストが示す数値

日付・時刻表示

Date

テキストが示す日付時刻

上記以外

String

テキストそのまま

呼出形式一覧

呼出形式

説明

void clipboardPaste([integer option[, integer modifyElement]])

クリップボードの内容を選択範囲の左上を基準とし、optionにより貼り付け範囲を調整し、modifyElement の値に従って貼り付けを行います。

戻り値一覧

戻り値

説明

void

なし

引数一覧

引数

説明

option

クリップボードの内容を選択範囲の左上を基準として貼り付けます。省略時はCLIPBOARDPASTEOPTIONS_OVERFLOWSELECTIONです。
以下の定数のいずれかを指定します。

定数値

説明

CLIPBOARDPASTEOPTIONS_OVERFLOWSELECTION

1:選択範囲を拡張する。

CLIPBOARDPASTEOPTIONS_CLIPBYSELECTION

2:選択範囲を拡張しない。

CLIPBOARDPASTEOPTIONS_TILINGPASTE

3:繰り返し貼り付けを行う。

modifyElement

クリップボードから貼り付ける時の動作。省略時はMODIFY_DEFAULTです。
以下の値の組み合わせを指定します。

定数値

説明

MODIFY_DEFAULT

0: pasteMode プロパティに従う。

MODIFY_ALL

1:値・スタイルを含めて変更する。

MODIFY_VALUE

2:値のみ変更する。

MODIFY_ADVANCE

0x00010000: 変更対象のセルがロックされていると、ロックされていないセルについてのみ変更する。 未指定の時は変更せず例外を発行する。

例外

識別子

説明

CRS::Common::UI::Spread-3:1

選択範囲が複数あります。

CRS::Common::UI::Spread-3:2

結合されたセルの一部に重なっています。

CRS::Common::UI::Spread-3:3

セルがラベル型もしくはロックされています。

関連項目

copyable プロパティ
pasteMode プロパティ
clipboardCopyclipboardCut メソッド


使用例 CRSダウンロード

Form Spread_clipboardCopy {
   x = 0;
   y = 0;
   width = 800;
   height = 600;

   Spread spread1 {
           x = 8;
           y = 8;
           width = 640;
           height = 440;

           spread1 << CSV {
                   1,2,3,4,5
                   2,3,4,5,6
                   3,4,5,6,7
                   4,5,6,7,8
           };

           maxColumns = 20;
           maxRows = 20;

           range("A1:B2").select();
   }

   Button button1 {
           x = 664;
           y = 32;
           width = 112;
           height = 32;
           title = "実行";
           function onTouch(e) {

                   #選択範囲をクリップボードにコピーします
                   ^.spread1.clipboardCopy();

                   ^.spread1.cell("D3").select();

                   #選択範囲がクリップボードと同じになるようペーストを行います
                   ^.spread1.clipboardPaste(Spread.CLIPBOARDPASTEOPTIONS_OVERFLOWSELECTION);
           }
   }
}