「attempt to index nil」エラーの直し方

入門トラブル更新日:2026年11月13日Luauの型チェック済み

ひとことで言うと

いちばん多いエラー「attempt to index nil with ...」の意味と、原因の見つけ方です。

この記事で使うAPI

Instance

このエラーの意味

「nil(何もない)の中身を見ようとしました」という意味です。たとえば、ないはずのパーツの色を変えようとしたときに出ます。

local part = workspace:FindFirstChild("Doa") -- つづりまちがい
part.Color = Color3.new(1, 0, 0) -- ここでエラー

原因の見つけ方

エラーの最後にある「with ‘Color’」の部分を見ます。その「.Color」の左側にあるものがnilです。

直し方

  • 名前と置き場所を見直す
  • まだ存在しないかもしれないものは、使う前にifで確かめる
local part = workspace:FindFirstChild("Door")
if part then
	part.Color = Color3.new(1, 0, 0)
end

Touchedでふれたものからキャラクターを探すときも、Humanoidがない(ただのパーツがふれた)ことがよくあります。キルブロックの作例のように、ifで確かめてから使うと安全です。

執筆・動作確認:鈴木孝昌官公庁のWeb・システム開発を担当する現役プロジェクトマネージャー。沖縄マイクラ部 クロスウェーブで、ロブロックス(Roblox)・マインクラフト(マイクラ)・Scratchなどのプログラミングを指導。マイクラカップ沖縄代表チームを指導(第6回・第7回、第7回TBS賞)。
沖縄マイクラ部で、子どもたちにロブロックス(Roblox)やマインクラフト(マイクラ)のプログラミングを教えています。プロフィールと編集方針
Instagramで教室の様子を見る
noteで記事を読む