[]
        
(Showing Draft Content)

コピーまたは切り取ったセルの挿入

ユーザーは、コンテキストメニューから[切り取ったセルの挿入]または[コピーしたセルの挿入]を使用して、ワークブックの任意のスプレッドシートにコピーまたは切り取ったセルを挿入できます。また、セルを挿入する時、次のオプションを選択できます。

  • 右方向にシフト

  • 下方向にシフト


右方向にシフト: コピーまたは切り取ったセルを挿入すると、その右側に表示される項目がさらに右方向に移動します(移動した列数は挿入したセルの数と等しいです)。

次の図は、既存のデータ、セル結合、またはテーブルが右方向に移動された場合の動作を示します。


次の図は、既存のセル結合またはテーブルを右方向に移動するときに分割する必要がある場合、例外が発生することを示します。

下方向にシフト: コピーまたは切り取ったセルを挿入すると、その下に表示される項目がさらに下方向に移動します(移動した行数は挿入したセルの数と等しいです)。

次の図は、既存のデータ、セル結合、またはテーブルが下方向に移動された場合の動作を示します。


次の図は、既存のセル結合またはテーブルを下方向に移動するときに分割する必要がある場合、例外が発生することを示します。


ヘッダへのコピーまたは切り取ったセルの挿入

対象範囲がテーブル範囲ではない場合  

コピーしたセルの挿入]オプションを使用して行・列ヘッダにデータを挿入できます。スプレッドシート内の列または行の合計数は、挿入するセルの列数または行数で割り切れる数である必要があります。そうでない場合、コンテキストメニューで[コピーしたセルの挿入]オプションが表示されません。切り取り・コピーしたセルのデータは行・列全体に繰り替えし表示されます。

次の画像は、210行・20列のスプレッドシートを表示します。3列のデータをコピーして行ヘッダに挿入しようとすると、20が3で割り切れないので、[コピーしたセルの挿入]オプションが表示されません。ただし、2列のデータを行ヘッダにコピー・挿入すると、20が2で割り切れるので、挿入することができます。

Header1

同様に4行のデータを列ヘッダに挿入しようとすると、210が4で割り切られませんので、[コピーしたセルの挿入]のオプションが表示されません。ただし、3行のデータを列ヘッダに挿入すると、210が3で割り切れるので、挿入することができます。

Header2


対象範囲がテーブル範囲の場合 

[コピーしたセルの挿入]オプションを使用してテーブルにデータを挿入することもできます。ただし、対象テーブルに切り取り・コピーしたデータを貼付けるシナリオが2つあります。

  • 行方向

  • 列方向

行方向: ソースが行全体の場合、データのある列の数が対象テーブルの列数と同じか小さい場合、以下の動画で示すように切り取り・コピーしたデータが、テーブル範囲に挿入されます。

rangecolcountlesstargettable's colcount

次のテーブルは同様なシナリオとその動作を動画で説明します。

シナリオ 

結果 

画像 

Nullではない範囲の列数 > 対象テーブルの列数

  • テーブルがシートの1列目から始まる場合、テーブルが行全体に拡張され、データが貼付けられます。

  • テーブルがシートの1列目から始まらない場合、行を挿入してデータが貼付けられます。

rangecolcountgreatertargettable's colcount-start

rangecolcountgreatertargettable's colcount-notstart

ソース範囲が行全体ではない場合、

  • Aはソースの切り取り・コピー範囲の列数

  • Bは対象テーブル範囲の列数

  • Cはシート全体の列数であるとします。

次の動画は、210行・20列のスプレッドシートを表示し、対象テーブルはシートの1列目から表示されています。4列のデータをコピーして行ヘッダに挿入しようとすると、[コピーしたセルの挿入]オプションが表示され、クリックするとテーブルが拡張し、行が挿入されます。

tableatcol0-copy

次のテーブルは同様なシナリオとその動作を動画で説明します。

シナリオ 

説明 

動作(切り取り・コピー) 



コピー

切り取り

(C%A===0) の場合

テーブルがシートの1列目から始まる場合

テーブルが列で拡張され、行が挿入されます。

tableatcol0-copy

 

A===B、行が挿入されます。

tableatcol0-cut 

テーブルがシートの1列目から始まらない場合

行が挿入されます。

tablenotatcol0-copy 

A<=テーブルの列: 貼付け

tablenotatcol0-cut 

A=== テーブルの列+B 

繰り返さない貼付け

a===b+table'scol

 

(C%A!==0) の場合

 

テーブルがシートの1列目から始まる場合

  • A===B: 行が挿入されます。

Tablecol0-A==B

  • A>B+テーブルの列:ヘッダ行のみ、でない場合はエラー

tablecol0-agreaterb 

  • A===B+テーブルの列: 行が挿入されます。a===b 

  • A>B+テーブルの列:ヘッダ行のみ、でない場合はエラー

agreaterb

テーブルがシートの1列目から始まらない場合

  • A>B+テーブルの列:ヘッダのみ、でない場合はエラー

tablenotcol0-AgreaterB 

  • A===B+テーブルの列: 行が挿入されます。

tablenotcol0-A==B 

  • A<テーブルの列:貼付け 

tablenotcol0-Alesstablecol 

その他のシナリオ

対象テーブルの上のソース範囲

エラーメッセージ:

else-above

対象テーブルの下のソース範囲

エラーメッセージ:

else-below 

 列方向:

  • Dは切り取り・コピー範囲の行数

    Eはテーブル範囲の行数

シナリオ 

説明 

動作(切り取り・コピー) 

D===E+テーブルの開始行 の場合

テーブルがシートの1行目から始まる場合

最初列に挿入:テーブルが右に移動され、列が挿入されます。テーブルの最初列に挿入しません:貼付け

tablerow0d===e 

 

 

テーブルがシートの1行目から始まらない場合

最初列に挿入:テーブルが右に移動され、列が挿入されます。テーブルの最初列に挿入しません:エラーメッセージ

tablenotrow0d===e

 

D< テーブルの開始行の場合

貼付け:

dlesstablestartrow 

D!==E+ テーブルの開始行の場合

エラーメッセージ:

d!==e 

メモ: 行領域にすでにデータやスパンがある場合、切り取り・コピーしたデータが挿入されません。