エラーメッセージ「配列の一部を変更することはできません。」の発生原因と解決策
Excelを使っている際に、「配列の一部を変更することはできません。」というエラーメッセージに遭遇することがあります。特に自分以外のユーザーが作成したブックの編集時に発生することがあります。
このメッセージは主にCSE(Control + Shift + Enter)で生成された複数セル配列数式を編集または削除や移動をしようとした時に発生します。並べ替えでも発生します。ここでは、このエラーの原因と解決策を解説します。
【概略】複数セル配列数式とは・複数のセルにまたがる数式
複数セル配列数式とは
複数セル配列数式は、一つの数式で複数のセルにまたがる結果を出力するタイプの数式です。いくつか種類がありますが、上記のメッセージが出現するのは{}で囲まれたパターンの数式です。
下図の例ではD2:D8に同じ計算式
=B2:B8*C2:C8
が入力されています。複数の範囲の式を1つで表現しています。確定時に「Control + Shift + Enterキー」を使うと1つの式で複数の範囲の計算が管理できるようになります。
「Control + Shift + Enterキー」で作成された複数セル配列数式は{}で囲まれます。この式は複数の計算式を管理している可能性があります。
複数セル配列数式の簡単な作り方
事例を通して多重配列数式の簡単な作り方を見ていきましょう。ここではD2:D7の7セルへ「2つ左×1つ左」の式を立てます。
その7セルを選択して、「=」から計算式の作成を開始します。続けて参照セルの指定をしますが、この場合「2つ左」も7セル分、「1つ左」も7セル分指定して掛け算をします。ただしこのまま{Enter}で確定しません。
確定時に「Control + Shift + Enterキー」を使うと選択していたすべてのセルへ反映されます。作成された式は
{=B2:B8*C2:C8}
のように{}で囲まれます。
「配列の一部を……」エラーの発生原因と解決策
複数セル配列数式に対して何らかの操作をしようとすると、エラーメッセージ「配列の一部を変更することはできません。」が出て操作を拒否されることがあります。以下に原因と対策を見ていきましょう。
一部だけのセルを削除しようとした場合
- 原因: 配列数式が適用されている範囲の中で、一部のセルだけを削除しようとすると、このエラーが発生します。
- 解決策: 配列数式が適用されている全てのセルを選択してから削除操作を行います。
一部だけのセルを移動しようとした場合
- 原因: 配列数式の範囲内のセルを一部だけ移動しようとすると、エラーが出ます。
- 解決策: 移動したい場合は、配列数式が適用されている全てのセルを選択し、一緒に移動させます。
計算式を編集しようとした場合
- 原因: 配列数式の一部のセルだけを編集しようとすると、エラーが生じます。
- 解決策: 編集する際は、修正後、
Ctrl
+Shift
+Enter
を使って編集を確定します。これにより、修正内容が配列全体に適用されます。
配列数式の範囲に新しいデータを挿入しようとした場合
- 原因: 既存の配列数式の範囲内に新たなデータやセルを挿入しようとすると、エラーが発生します。
- 解決策: この場合の直接的な解決策はありません。配列数式を一旦削除し、必要な挿入や変更を行った後、改めて配列数式を適用する必要があります。
配列数式の範囲で並べ替えを実行しようとした場合
- 原因: 既存の配列数式の範囲内で並べ替えを実行しようとすると、エラーが発生します。
- 解決策: 配列数式のデータをコピーし、別の場所へ「値」として貼り付けてください。そしてそちらで並べ替えを実行してください。
参考:配列数式範囲の選択方法
適切な配列数式範囲の選択方法は以下のリンク先のページをご確認ください。
コメント