エラー メッセージ
[フィールド演算] または [フィールド演算 (Calculate Field)] ツールを操作中に、次のような一般的なエラーが表示されることがあります。
エラー 999999: 関数の実行中にエラーが発生しました。 値のタイプが フィールド タイプと互換性がありません。(CalculateField) を実行できませんでした。
このエラーは、特定のフィールド タイプに対して無効な値を計算しようとしたときに表示されます。 ArcMap はこのエラー メッセージを警告として扱い、そのフィールド タイプで有効な値のみに対する計算を実行しようとします。
原因
このエラーには次のような原因が考えられます。
- 計算対象の値に対して正しくないフィールド データ タイプが使用されています。 たとえば、short integer データ タイプでは -32,768 ~ 32,768 の間の short integer しか処理できず、長い数値は大きすぎてフィールドに入らないため、サポートされません。 こうした大きい値を計算するには、フィールドを long integer データ タイプに変換する必要があります。 さまざまなフィールド データ タイプの詳細については、「ArcGIS フィールド データ タイプ」をご参照ください。
- 属性テーブルに、同じエイリアス フィールド名を持つ 2 つのフィールドが含まれています。
- [フィールド演算 (Calculate Field)] ウィンドウで NULL 値を割り当てるときの Python 構文が正しくありません。
解決策または対処法
原因に応じて、以下のいずれかのオプションを選択して問題を解決します。
- 既存のフィールド データ タイプを適正なデータ タイプに変更します。 データ タイプの変更方法については、「操作手順: 既存のフィールドのデータ タイプの変更」をご参照ください。
- 属性テーブルから重複するフィールドを削除します。 属性テーブルで、重複するフィールド名を右クリックして [フィールドの削除] を選択します。
- NULL 値は値が存在しないことを表すために割り当てられます。 NULL 値をフィールドに割り当てるには、[フィールド演算 (Calculate Field)] ウィンドウで [条件式] に None を使用し、[条件式の種類] で [PYTHON] を選択します。 [OK] をクリックして [フィールド演算 (Calculate Field)] ツールを実行します。
NULL 値の詳細については、「フィールド演算の例 - NULL 値の計算」をご参照ください。