Scratchのエラー・トラブル解決大全|動かない時の原因と対処法

プログラミング・電子工作






Scratchのエラー・トラブル解決大全|動かない時の対処法







トラブルシューティング / 保存版

Scratchのエラー・トラブル解決大全|動かない時の対処法

Scratchは、文字のコードを書かないぶん、エラーメッセージが出ません。だからこそ、「なぜ動かないのか」が分かりにくく、困ってしまうことがあります。本記事は、そんなときの「駆け込み寺」です。ブロックの組み立てから、実行時の不具合、スプライトのトラブル、電子工作連携まで、できる限り幅広く、具体的な手順つきでまとめました。今、困っていることに近い項目を、目次から探してみてください。

YOFUKASI LAB編集部
公開日:2026年9月15日
読了目安:45分(辞書的に活用推奨)

執筆・実機検証:YOFUKASI LAB運営者

理学療法士/Arduino・Pythonを使った医療機器制作・学会発表経験あり

🔧 この記事の使い方

最初から順番に読む必要はありません。今、困っていることに近い章を探してください。

  • ブロックがうまく組み立てられないときは → 1章へ
  • 緑の旗を押しても動かないときは → 2章へ
  • スプライトやコスチュームがおかしいときは → 3章へ
  • 変数やリストが思った通りにならないときは → 4章へ
  • 音が鳴らないときは → 5章へ
  • ジャンプ・当たり判定などゲーム作りで困っているときは → 6章へ
  • 保存・共有ができないときは → 7章へ
  • アカウント・ログインで困っているときは → 8章へ
  • Arduino・Raspberry Pi・micro:bitとの連携で困っているときは → 9章へ
  • 動作が重い・カクつくときは → 10章へ

📖 先に知っておくと読みやすい言葉

本記事で繰り返し出てくる言葉を、先に簡単に説明します。

  • スプライト:画面に登場するキャラクターや物のことです。
  • 変数:数字や文字を、一時的に覚えておく入れ物のことです。スコアなどに使います。
  • リスト:変数を、複数まとめて並べられるようにしたものです。
  • クローン:あるスプライトを、プログラムの中で複製したコピーのことです。敵キャラを何体も出したいときなどに使います。
  • 「ずっと」ブロック:中に入れたブロックを、無限に繰り返し実行させるブロックです。
Chapter 01 / Block Basics

01ブロックの組み立て・基本操作編

Scratchのブロックがつながらない時の原因と基本的な直し方

「ブロックがうまくつながらない」。Scratchを始めたばかりの方が、最初にぶつかる壁です。代表的な原因から見ていきましょう。

とくに多い2つの原因(詳しく解説)

1ブロックの形が合っていない

Scratchのブロックには、それぞれ決まった「形」があります。四角いブロックの上には四角いブロックしかはまりません。「もし〜なら」のような六角形の判定ブロックは、専用の穴にしかはまりません。つなげたいブロック同士の、端の形をよく見比べましょう。

2ドラッグする位置がずれている

ブロックをつなげるには、下に置きたいブロックの上端を、上のブロックの下端に、ぴったり近づける必要があります。少し離れた位置でマウスを離すと、つながらずに単独で置かれてしまいます。近づけると、白い影(プレビュー)が表示されるので、それを目印にしましょう。

1ブロックがうまくつながらない
① つなげたい2つのブロックの、端の形(凸凹)を見比べる。
② ドラッグ中に、つなげたい場所の近くまでマウスを持っていくと、白い影(ハイライト)が表示されるか確認する。表示されれば、その位置でマウスを離す。
③ 表示されない場合、ブロックの種類が合っていない可能性があります(例:六角形の判定ブロックを、四角いブロックの列に挟もうとしている)。

2ブロックを間違った場所につなげてしまった
① つなげたブロックを、そのままつかんで、少し上に持ち上げる(下のブロック群から切り離される)。
② 正しい位置まで、そのままドラッグして移動する。
③ 間違えて動かしすぎた場合は、キーボードのCtrl+Z(Macはcommand+Z)で、1つ前の状態に戻せます。

3ブロックが消えてしまった
① まず、Ctrl+Z(元に戻す)を押してみる。多くの場合、これで復活します。
② 戻らない場合、ブロックをゴミ箱(ブロックパレット)にドラッグして、誤って削除していないか思い出す。
③ 別のスプライトを選択している間に、作業中のスクリプトが見えなくなっているだけ、というケースもあります。該当のスプライトを、再度選び直して確認する。

4ブロックの色分けの意味が分からない
① 左側のパレット上部にある、色付きのカテゴリ名(動き・見た目・音など)を確認する。
② それぞれの色が、そのままブロックの色に対応しています。「動き」は青、「制御」はオレンジ、というように覚えると、目的のブロックを探しやすくなります。
③ 迷ったら、カテゴリ名を1つずつクリックして、中に入っているブロックを眺めてみるのもおすすめです。

5ブロックを右クリックしても何も出ない
① 右クリックする場所が、ブロックの本体(文字が書かれた部分)の上になっているか確認する。
② 空白の作業スペースを右クリックすると、別のメニュー(きれいにする、など)が出ます。目的に応じて、クリックする場所を変える。
③ タブレットの場合は、ブロックを長押しすることで、同様のメニューが表示されます。

6ブロックパレットに欲しいブロックが見当たらない
① 画面左下にある、「拡張機能を追加」ボタン(青い+マークのアイコン)を確認する。
② 音楽、ペン、翻訳、物理演算(Text to Speech等)、電子工作関連(micro:bit等)のブロックは、拡張機能として、追加しないと表示されません。
③ 一覧から、必要な拡張機能を選んでクリックすると、パレットに新しいカテゴリが追加されます。

7ブロックの数値を変更できない
① 変更したい数値の、白い丸みを帯びた部分を、直接クリックする(ブロック全体をクリックすると、実行されてしまうので注意)。
② カーソルが点滅したら、キーボードで数値を入力する。
③ 入力後、ブロックの外側の何もない場所をクリックすると、確定されます。

8かたまりのブロックを外そうとして、全部外れてしまう
① ブロックをつかむ位置によって、外れる範囲が変わります。あるブロックをつかむと、そのブロックから下にある、すべてのブロックが一緒に外れます。
② 1つのブロックだけを外したい場合は、その下にあるブロックを、先に別の場所へ一時的に移動させてから、目的のブロックを外し、その後、下のブロックを元の位置に戻す、という手順を踏みます。

9複数のブロックをまとめて動かしたい
① 動かしたい、一番上のブロックをつかんでドラッグする。
② そのブロックにつながっている、下のブロックすべてが、自動的に一緒に移動します。
③ 離れた場所にある複数のスクリプトをまとめたい場合、Scratchには範囲選択機能がないため、1つずつ移動させる必要があります。

10ブロックを複製したい
① 複製したいブロックの上で右クリックする。
② 出てきたメニューから「複製」を選ぶ。
③ 複製されたブロックが、マウスにくっついてくるので、好きな場所でクリックして配置する。下につながっているブロックも、まとめて複製されます。

11コメントを付けたい
① コメントを付けたいブロックの上で右クリックする。
② 「コメントを追加」を選ぶ。
③ 表示された黄色い付箋に、メモを入力する。付箋の左端をドラッグすると、折りたたんだり、位置を動かしたりできます。

12ブロックの実行順序が分からなくなった
① Scratchは、上から下へ、順番にブロックを実行します。まず、その基本を思い出す。
② 確認したい箇所に、「(メッセージ)と2秒言う」ブロックを、一時的に差し込む。
③ 実行してみて、想定した順番でメッセージが表示されるか確認する。確認が終わったら、そのブロックを削除する。



Chapter 02 / Runtime Issues

02実行時のトラブル編

Scratchで緑の旗を押しても動かない時や途中で止まる時の対処法

ブロックは組み立てられたのに、実行すると思い通りに動かない。Scratchでもっとも多く寄せられる相談です。

13緑の旗を押しても何も起きない
① スクリプトの一番上に、「緑の旗が押されたとき」ブロックがあるか確認する。このブロックがないと、緑の旗を押しても反応しません。
② スクリプトが、正しいスプライトに置かれているか確認する(左下のスプライト一覧で、対象のスプライトが選ばれているか)。
③ ブロック単体を直接クリックして、そのブロックだけが正常に動くか、切り分けて確認する。

14スプライトが画面外に消えてしまった
① ステージ上部の、スプライトの「x座標」「y座標」の数値を確認する(スプライト情報パネル)。
② x座標が-240〜240、y座標が-180〜180の範囲を超えていれば、画面外にいます。数値を0に変更して、中央に戻す。
③ 「もし端に着いたら跳ね返る」ブロックが入っていない場合、動き続けるブロックで、どんどん遠くへ行ってしまうことがあります。追加を検討する。

15プログラムが途中で止まる
① 止まる直前に、「ずっと」や「〜まで繰り返す」ブロックがないか確認する。条件が満たされないまま、無限に待ち続けている可能性があります。
② 「もし〜なら」ブロックで、条件がずっと成立しないままになっていないか確認する。
③ 「〜秒待つ」ブロックの、待ち時間が長すぎないか確認する。

16if文(もし〜なら)が思った通りに分岐しない
① 「もし〜なら」の、六角形の判定部分に、正しい比較ブロック(=、<、>など)が入っているか確認する。
② 比較している2つの値を、それぞれ「〜と2秒言う」ブロックで、一時的に表示して確認する。
③ 文字列と数値を比較していないか確認する(例:変数が「10」という文字として保存されていて、数値の10と正しく比較できていない場合があります)。

17「ずっと」ブロックの中身が実行されない
① 「ずっと」ブロックの、内側の凹みに、実行したいブロックが正しくはまっているか確認する(隣に置いただけで、中に入っていないケースがあります)。
② スクリプトの一番上に、実行のきっかけとなるブロック(「緑の旗が押されたとき」など)があるか確認する。

18変数の値がリセットされない
① 「緑の旗が押されたとき」の直後に、「変数を0にする」のような、初期化のブロックがあるか確認する。
② なければ追加する。Scratchは、前回の実行結果を、変数にそのまま残す仕様のため、明示的なリセットが必要です。

192つのスクリプトが同時に動いて競合する
① 同じ変数やスプライトの座標を、複数の「ずっと」ブロックが、同時に操作していないか確認する。
② 操作が競合している場合、片方のスクリプトの役割を明確にして、統合するか、別々の変数を使うように書き換える。
③ 「メッセージを送る/受け取ったとき」ブロックを使うと、複数のスクリプトの実行タイミングを、意図的にそろえられます。

20キー入力が反応しない
① 「(スペース)キーが押されたとき」ブロックを使っている場合、指定したキー名が正しいか確認する(プルダウンから選び直す)。
② 「もし〜キーが押された なら」という、調べるカテゴリのブロックを使っている場合、これは「ずっと」ブロックの中に入れて、常にチェックし続ける必要があります。
③ ブラウザの別のタブや要素に、フォーカスが当たっていないか確認する。ステージ部分を一度クリックしてから、キーを押してみる。

21マウスクリックが反応しない
① 「このスプライトが押されたとき」ブロックを使っている場合、判定される範囲は、見た目の絵の形に沿っています。透明な部分をクリックしても反応しません。
② スプライトの絵自体が小さすぎないか確認する。
③ 他のスプライトが、上に重なって、クリックを妨げていないか確認する。

22スプライトの向きがおかしくなる
① スプライト情報パネルにある、「回転方法」の設定を確認する(左右のみ/自由に回転/回転しない、の3種類があります)。
② 「〜度回す」ブロックを使うキャラクターは、「左右のみ」に設定すると、上下逆さまにならず、左右の向きだけが変わるようになります。
③ 意図と違う設定になっていれば、変更する。

23「もし〜なら」の条件が、常に真になってしまう
① 条件の中の比較演算子(=、<、>)が、意図した向きになっているか確認する。
② 比較している変数の中身を、「〜と言う」ブロックで、実際に表示して確認する。
③ 数値と文字列を比較していないか確認する(Q16と同様の原因です)。

24動きがカクカクする
① 「ずっと」ブロックの中に、「〜秒待つ」ブロックが入っていないか確認する。入っていれば、待ち時間を短くするか、削除してみる。
② 動かしている座標の変化量(歩数)が、大きすぎないか確認する。数値を小さくして、滑らかさを比べる。
③ スプライトの数や、コスチュームの画像サイズが大きすぎないかも、10章(パフォーマンス編)を参照して確認する。

25突然フリーズする
① 直前に、無限に増え続ける処理(クローンを無条件に作り続けるなど)がないか確認する。
② ブラウザのタブを、一度リロードしてみる(保存していない変更は失われるため、こまめな保存を心がけましょう)。
③ 繰り返し発生する場合は、10章のパフォーマンス編もあわせて確認する。

26ブロックの周りに、黄色い枠が表示される
① これは、実行中であることを示す、正常な表示です。エラーではありません。
② もし処理が想定より長く黄色い枠のままなら、その中に、終わらない繰り返し処理がないか確認する。

27ブロックは動くのに、画面に反映されない
① 操作しているスプライトが、非表示(「隠す」ブロックが実行された状態)になっていないか確認する。「表示する」ブロックを、スクリプトの最初に追加する。
② 別のスプライトや背景が、上に重なって隠していないか確認する。
③ 座標が、画面の外(Q14参照)になっていないか確認する。



Chapter 03 / Sprites and Costumes

03スプライト・コスチューム編

Scratchのスプライト追加や重なりやコスチューム切り替えのトラブル対処法

キャラクターや、その見た目に関するトラブルです。

28新しいスプライトが追加できない
① 画面右下にある、ネコのアイコン(スプライトを追加)にカーソルを合わせる。
② 表示されるメニューから、「スプライトを選ぶ」「描く」「サプライズ」「アップロード」のいずれかを選ぶ。
③ クリックしても反応しない場合、ブラウザを一度リロードして試す。

29スプライトが重なって見えない
① 見えなくなったスプライトを右クリックし、「最前面に移動」を選ぶ。
② コードでの対処には、「最前面へ移動する」ブロック(見た目カテゴリ)を使う方法もあります。
③ どちらのスプライトを手前にしたいか、意図を明確にしてから、レイヤーの順番を整理する。

30コスチュームが切り替わらない
① 「次のコスチュームにする」ブロックが、実行される場所(「ずっと」の中など)に正しく置かれているか確認する。
② そのスプライトに、コスチュームが2枚以上あるか、「コスチューム」タブで確認する。1枚しかなければ、切り替えようがありません。
③ 切り替えの直後に、「〜秒待つ」を入れないと、一瞬で何度も切り替わり、目に見えないことがあります。

31自分で描いた絵が反映されない
① 「コスチューム」タブを開き、描いた絵が、一覧に追加されているか確認する。
② 追加されていても、ステージに反映されない場合、実行中のコードが、別のコスチュームに固定していないか確認する(「コスチュームを〜にする」ブロックなど)。
③ 描いた絵のサイズが、他のコスチュームと極端に違うと、表示が崩れることがあるため、サイズ感を見比べる。

32スプライトのサイズが変わらない
① 「大きさを〜%にする」ブロックが、正しく実行されているか確認する。
② スプライト情報パネルの「大きさ」欄の数値を、直接書き換えて試す。
③ コスチューム自体の画像サイズが極端に大きい場合、%を変更しても、見た目の変化が分かりにくいことがあります。

33スプライトを削除してしまった
① すぐにCtrl+Z(元に戻す)を押す。多くの場合、これで復活します。
② 元に戻らない場合、以前に保存したファイルがあれば、そちらから読み込み直す。
③ 今後は、大きな変更をする前に、こまめに保存する習慣をつけることをおすすめします。

34複数のスプライトを同時に操作したい
① Scratchでは、スプライトごとに、別々のスクリプトを組む必要があります。
② 操作したいスプライトを、左下の一覧からクリックして選ぶ。
③ 選んだスプライトに対して、必要なブロックを組む。この作業を、操作したいスプライトの数だけ繰り返す。

35スプライトの名前を変更したい
① スプライト情報パネルの、上部にある名前欄をクリックする。
② 新しい名前を入力し、エンターキーを押して確定する。
③ 名前を変更しても、すでに組んだブロックの動作には、影響しません。

36コスチューム番号がずれる
① 「コスチューム」タブを開き、上から順に、実際の並び順を確認する。
② 「コスチューム番号」は、この並び順に対応した数字です。途中でコスチュームを削除・追加すると、後ろの番号がすべてずれます。
③ コード内で、番号を直接指定している場合は、ずれた後の正しい番号に、書き換える。

37背景(ステージ)が変わらない
① 画面左下の、ステージのサムネイルをクリックして選択する(スプライトではなく、ステージ自体を選ぶ必要があります)。
② 「背景を〜にする」ブロックが、正しいスクリプトに置かれているか確認する。
③ 「背景」タブに、切り替えたい背景が、実際に追加されているか確認する。

38アップロードした画像が表示されない
① 対応しているファイル形式(PNG、JPG、SVGなど)で保存されているか確認する。
② ファイルサイズが極端に大きい場合、読み込みに時間がかかったり、失敗したりすることがあります。画像編集ソフトで、サイズを縮小してから再度試す。
③ アップロード後、「コスチューム」タブの一覧に、実際に追加されているか確認する。

39スプライトが透明になった
① 「色を〜する」や「幽霊の効果を〜にする」ブロックが、実行されていないか確認する。
② 「グラフィック効果をなくす」ブロックを、スクリプトの最初に追加すると、すべての見た目の効果が、初期状態にリセットされます。



Chapter 04 / Variables and Lists

04変数・リスト編

Scratchの変数とリストが正しく動かない時の使い分けと対処法

スコアや状態の管理でよく使う、変数とリストのトラブルです。

40変数の値が正しく更新されない
① 「変数を〜にする」(値を上書き)と、「変数を〜ずつ変える」(値を加算・減算)を、混同していないか確認する。
② 更新したい処理が、実際に実行される場所(「もし〜なら」の中や「ずっと」の中)に、正しく置かれているか確認する。
③ スプライト間で、同じ名前の変数を、別々に作ってしまっていないか、Q41もあわせて確認する。

41変数がスプライト間で共有されない
① 変数を作成するときの設定を確認する。「このスプライトのみ」を選んでいると、そのスプライトでしか使えません。
② 複数のスプライトで共有したい場合は、変数作成時に「すべてのスプライト用」を選ぶ。
③ すでに「このスプライトのみ」で作ってしまった場合は、一度削除し、「すべてのスプライト用」で作り直す。

42リストに要素を追加できない
① 「リストに〜を追加する」ブロックが、正しく実行されているか確認する。
② リストの表示チェックボックスをオンにして、ステージ上で、実際に追加されているか確認する。
③ リストが、そもそも作成されているか(「変数を作る」ではなく「リストを作る」ボタンから作成したか)を確認する。

43リストの中身が消えてしまう
① 「緑の旗が押されたとき」の直後に、「リストのすべての項目を削除する」ブロックが、意図せず入っていないか確認する(初期化処理として、よくある原因です)。
② プログラムを再実行するたびに、このブロックが呼ばれ、中身がリセットされます。中身を保持したい場合は、このブロックを削除する。

44変数の表示チェックボックスが消せない
① 「変数」カテゴリのパレットで、対象の変数名の左にある、チェックボックスをクリックする。
② チェックを外すと、ステージ上の表示が消えます。
③ 表示スタイル(通常・大きな表示・スライダー)も、変数名を右クリックすると変更できます。

45ローカル変数とグローバル変数を間違える
① 「このスプライトのみ」がローカル変数(そのスプライト専用)、「すべてのスプライト用」がグローバル変数(全体で共有)です。
② 複数のスプライトで、同じ値を参照・変更したい場合は、グローバル変数を使う。
③ スプライトごとに独立した値(例えば、敵ごとの体力)を管理したい場合は、ローカル変数を使う。

46リストの番号がずれる
① リストは、1番目から数えます(配列のような0番目からではありません)。
② 途中の項目を削除すると、それより後ろの番号が、すべて1つずつ前にずれます。
③ 番号を直接指定している場合、削除・追加のたびに、想定していた番号とずれていないか、確認する。

47変数名を間違えて、別の変数を作ってしまった
① 「変数」カテゴリのパレットで、似た名前の変数が、複数ないか確認する。
② 不要な方を右クリックし、「変数を削除」を選ぶ(ただし、その変数を使っているブロックがあると、動作しなくなるため、事前にコード内での使用箇所を確認する)。
③ 必要な変数だけを残し、コード全体で、使う変数名を統一する。

48リストが画面に表示されすぎて邪魔
① リスト名の左にあるチェックボックスを外すと、表示を消せます。
② 表示したまま、大きさや位置を調整したい場合は、ステージ上のリスト表示の、右下にある四角いハンドルをドラッグして、サイズを変更できます。
③ 表示自体を、ドラッグして好きな位置に移動することも可能です。

49クローンと変数の関係が分からない
① クローン(複製されたスプライト)は、元のスプライトの「このスプライトのみ」変数を、クローンごとに、独立してコピーして持ちます。
② 「すべてのスプライト用」の変数は、すべてのクローンで、共通の1つの値を参照します。
③ クローンごとに違う値(体力など)を持たせたい場合は、「このスプライトのみ」の変数を使う。



Chapter 05 / Sound Issues

05音・サウンド編

Scratchで音が鳴らない時や録音できない時の確認ポイント

音に関するトラブルは、パソコンの設定が原因のことも多くあります。

50音が鳴らない
① パソコンやブラウザ本体の、ミュート設定を確認する。
② 「音」タブに、実際に音のデータが追加されているか確認する。
③ 「〜の音を鳴らす」ブロックで、指定している音の名前が、実際に存在するものと一致しているか確認する。
④ ブラウザによっては、ページを開いた直後は、ユーザーの操作(クリックなど)があるまで、音を自動再生しない制限があります。一度ステージをクリックしてから、実行してみる。

51音が二重に鳴る
① 同じ音を鳴らすブロックが、複数のスクリプトから、同時に呼ばれていないか確認する。
② 「ずっと」ブロックの中に、鳴らす処理が入っている場合、意図せず、繰り返し再生されていないか確認する。
③ 「〜の音を鳴らすまで待つ」ブロックを使うと、前の音が終わるまで、次の再生を待たせることができます。

52録音した音が反映されない
① 「音」タブの「録音」機能を使った場合、録音後に「保存」ボタンを押しているか確認する。
② ブラウザから、マイクへのアクセス許可を求められた場合、「許可」を選んでいるか確認する。
③ マイク自体が、パソコンに正しく接続され、他のアプリで認識されているかも確認する。

53音量が変えられない
① 「音」カテゴリの、「音量を〜%にする」ブロックを使う。
② パソコン本体の音量とは別に、Scratch内でも音量調整ができる仕組みです。両方の設定を確認する。

54音が途中で途切れる
① 「〜の音を鳴らす」ブロックの直後に、短い「〜秒待つ」や、別の処理が入っていないか確認する。次の処理に移ると、前の音の再生が中断されることがあります。
② 「〜の音を鳴らすまで待つ」ブロックに変更すると、最後まで再生されます。

55BGMとSE(効果音)を同時に鳴らせない
① 音を鳴らす処理を、別々のスプライトに分けて配置する(1つのスプライトで、同時に2つの音を制御しようとすると、後の処理が前の音を止めてしまうことがあります)。
② 「〜の音を鳴らす」(鳴らすまで待たない方)を使うと、重ねて再生しやすくなります。

56音のライブラリから探せない
① 「音」タブの左下、スピーカーのアイコン(音を選ぶ)をクリックする。
② 表示された一覧の、上部にあるカテゴリ(効果音、ループ、人の声など)で絞り込むか、検索窓にキーワードを入力する。

57音の長さが合わない
① 「音」タブを開き、波形の表示画面で、不要な部分をドラッグして選択する。
② 選択した範囲を、画面上部のハサミのアイコンで、切り取ったり削除したりできます。
③ 編集後、忘れずに保存する。



Chapter 06 / Game Development

06ゲーム制作特有のトラブル編

Scratchゲームでジャンプや当たり判定やスコアがおかしい時の対処法

ジャンプ、重力、当たり判定など、アクションゲーム制作でよくぶつかる壁です。より詳しい作り方は、専門記事もあわせてご覧ください。

58キャラクターが地面をすり抜ける
① 「地面に触れた」の判定が、「ずっと」ブロックの中で、毎回チェックされているか確認する。
② 落下速度(変数)が大きすぎると、1フレームで地面を飛び越えてしまうことがあります。速度の上限や、加算する数値を小さくしてみる。
③ 着地判定の後、y座標を1ずつ戻す「めり込み防止」の処理が入っているか確認する。

59ジャンプが不自然
① ジャンプ時に、速度用の変数に与える初速(例:15など)の値を、少しずつ変えて試す。
② 重力として、毎フレーム引いている数値(例:-1)も、あわせて調整する。値を大きくすると、キャッチボールのような軽快な動きに近づきます。
③ 詳しい実装手順は、専門記事で解説しています。

60二段ジャンプが暴発する(何度もジャンプできてしまう)
① ジャンプ回数を数える変数が、着地したタイミングで、0にリセットされているか確認する。
② ジャンプの条件に、「ジャンプ回数が、上限(2など)より少ない」という条件が、正しく入っているか確認する。
③ キー入力の判定が、「ずっと」の中で毎フレームチェックされ、キーを押し続けている間、連続でジャンプ処理が呼ばれていないか確認する(1回押すごとに1回だけ反応させる工夫が必要です)。

61当たり判定が反応しない
① 「〜に触れた」ブロックで指定している、相手のスプライト名が正しいか確認する。
② 判定したいスプライト同士の、コスチューム画像に、透明な余白が多すぎないか確認する(絵の実サイズより、判定範囲が小さく感じられる原因になります)。
③ 判定処理が、「ずっと」ブロックの中で、継続的にチェックされているか確認する。

62当たり判定が過剰に反応する
① 1回の接触で、処理が何度も実行されていないか確認する(触れている間、毎フレーム反応してしまうことがあります)。
② 判定後に、「無敵中」のような一時的なフラグ変数(0か1で管理する変数)を立て、「もし〜に触れた かつ 無敵中=0 なら」という条件に変更する。
③ 処理を実行したら、フラグを1にし、「1秒待つ」などをはさんでから、フラグを0に戻す。これにより、接触直後の一定時間だけ、反応しないようにできます。

63スコアが正しくカウントされない
① スコアを増やす処理が、1回の当たり判定で、複数回呼ばれていないか確認する(Q62と同じ原因)。
② スコア変数が、「すべてのスプライト用」として、正しく共有されているか確認する(Q41参照)。
③ ゲーム開始時に、スコアを0にリセットする処理があるか確認する。

64ゲームオーバーの処理が動かない
① ゲームオーバーの条件(体力が0になった、敵に触れたなど)が、正しく判定されているか確認する。
② 「すべてを止める」ブロックが、正しいタイミングで呼ばれているか確認する。
③ 「すべてを止める」は、名前の通りプロジェクト全体の動作を止めるため、その後に続けたい処理(メッセージ表示など)があれば、止める前に実行しておく必要があります。

65複数の敵を、同時に処理したい
① 「クローンを作る」ブロックを使うと、同じスプライトを、プログラムから複数生成できます。
② 「クローンされたとき」ブロックから始まるスクリプトが、それぞれのクローンで、個別に実行されます。
③ クローンごとに違う値を持たせたい場合は、「このスプライトのみ」の変数を使う(Q49参照)。

66タイマーが正しく動かない
① 「調べる」カテゴリの「タイマー」ブロックは、Scratch全体で1つの、共通のタイマーです。
② 計測を始めたいタイミングで、「タイマーをリセット」ブロックを呼ぶ。
③ 独自のカウントダウンを作りたい場合は、変数を使い、「ずっと」ブロックの中で、1秒ごとに1ずつ減らす仕組みを、自分で組む必要があります。

67難易度が急に上がる・下がる
① 敵の速度や出現間隔を決めている数値が、段階的に変化する仕組みになっているか確認する。
② スコアや経過時間に応じて、変数の値を、少しずつ変化させる処理(例:スコアが100増えるごとに、速度を1上げる)を追加する。

68リスタート処理がうまくいかない
① 「緑の旗が押されたとき」に、すべての変数を初期化する処理が、正しく入っているか確認する。
② スプライトの座標や、コスチューム、表示状態も、ゲーム開始時の状態に、明示的に戻す処理を追加する。
③ クローンを使っている場合、「このスプライトの他のクローンを削除する」ブロックを、リセット時に呼ぶことで、残ったクローンを片付けられます。

69クローンを使うと重くなる
① 画面外に出たクローンや、不要になったクローンを、「このクローンを削除する」ブロックで、こまめに削除しているか確認する。
② 削除せずに増え続けると、動作が重くなる典型的な原因になります。
③ 詳しいパフォーマンス対策は、10章もあわせて確認する。



Chapter 07 / Save and Load

07保存・共有・読み込み編

Scratchの保存や共有やログインができない時のトラブル対処法

せっかく作った作品を、失わないためのトラブル対策です。

70保存したファイルが開けない
① ファイルの拡張子が「.sb3」になっているか確認する(古いバージョンの「.sb2」は、最新版で開けないことがあります)。
② Scratchの「ファイル」メニューから、「読み込む」を選び、正しい手順で開いているか確認する(ダブルクリックだけでは開かないことがあります)。
③ ファイル自体が破損している可能性がある場合、別の保存箇所(バックアップ)がないか確認する。

71作品が消えてしまった
① パソコンの「ダウンロード」フォルダなど、以前保存した場所を、ファイル名で検索してみる。
② オンライン版を使っていた場合、アカウントにログインし、「マイ作品」ページに、自動保存されていないか確認する。
③ 見つからない場合、残念ながら、最初から作り直す必要があります。今後は、作業のこまめな保存を習慣にしましょう。

72オフライン版とオンライン版で、ファイルの互換性がない
① 基本的には、両方とも同じ「.sb3」形式で、互換性があります。
② オフライン版で「コンピューターに保存」したファイルを、オンライン版の「読み込む」機能で開けるか確認する。
③ バージョンが古いオフライン版を使っている場合、うまく開けないことがあります。公式サイトから、最新のオフライン版アプリをダウンロードし直す。

73共有した作品が、他の人に反映されない
① 「共有する」ボタンを押した後、画面上部に「共有済み」と表示されているか確認する。
② 共有後も、変更を加えた場合は、再度保存する必要があります。
③ 共有リンクを、正しい最新のものに更新して、相手に伝え直す。

74拡張子(.sb3)が分からない
① パソコンの「エクスプローラー」や「Finder」の設定で、「拡張子を表示する」をオンにする。
② ファイル名の末尾に「.sb3」と表示されていれば、Scratchのプロジェクトファイルです。
③ 表示されていなくても、Scratchで保存した直後のファイルであれば、多くの場合、この形式になっています。

75自動保存されない
① オフライン版には、自動保存の機能がありません。「ファイル」→「コンピューターに保存」を、こまめに手動で行う必要があります。
② オンライン版でログイン中は、一部自動的に保存される場合がありますが、確実に残すには、「共有する」や、明示的な保存操作を行うことをおすすめします。

76複数人での共同編集ができない
① Scratch自体には、リアルタイムの共同編集機能はありません。
② 1人が作業したファイルを保存し、別の人に共有・受け渡しして、順番に編集する運用が基本になります。
③ 「リミックス」機能を使うと、公開された作品をもとに、別々に改造版を作ることができます。

77バックアップの取り方が分からない
① 「ファイル」→「コンピューターに保存」を選ぶ。
② 保存する際、ファイル名に日付を入れる(例:game_0915.sb3)など、複数のバージョンを、区別できる名前で残しておくと安心です。
③ クラウドストレージ(Googleドライブなど)に、定期的にアップロードしておくのも、有効な対策です。

78エクスポートした動画・画像が変
① Scratch本体には、動画としてエクスポートする標準機能はありません。画面録画ソフトなど、別のツールを使っているか確認する。
② スプライトを画像として保存する場合は、「コスチューム」タブで、対象のコスチュームを右クリックし、「エクスポート」を選ぶ。

79プロジェクトが重くて、保存に失敗する
① 使っていない、大きな音声データや画像データが、残っていないか確認する。
② 「音」「コスチューム」タブで、不要なものを削除してから、再度保存を試す。
③ それでも失敗する場合、ブラウザを再起動してから、もう一度試す。



Chapter 08 / Account Issues

08アカウント・オンライン機能編

Scratch公式サイトの、アカウントに関するトラブルです。

80アカウント登録ができない
① 入力したユーザー名が、すでに他の人に使われていないか確認する(エラーメッセージに、その旨が表示されます)。
② パスワードが、必要な文字数や種類の条件を、満たしているか確認する。
③ 保護者の同意が必要な年齢の場合、案内に沿って、保護者のメールアドレスなどを、正しく入力する。

81パスワードを忘れた
① ログイン画面の、「パスワードをお忘れですか」のリンクをクリックする。
② 登録時のユーザー名、またはメールアドレスを入力する。
③ 届いたメールの案内に沿って、新しいパスワードを設定する。

82ログインできない
① ユーザー名とパスワードの、大文字・小文字が正しいか、1文字ずつ確認する。
② 何度も失敗すると、一時的にロックがかかる場合があります。少し時間を置いてから、再度試す。
③ それでもダメなら、Q81の手順で、パスワードを再設定する。

83作品が非公開になっている
① 「マイ作品」ページを開き、対象の作品の、公開設定を確認する。
② 非公開になっていれば、作品を開き、「共有する」ボタンを押して、公開状態に切り替える。

84コメントができない
① ログインしているか確認する(コメントには、ログインが必要です)。
② 作品の投稿者が、コメント機能をオフにしている場合、他の人はコメントできません。
③ 年齢や設定によって、コメント機能自体が、制限されている場合もあります。

85フォロー機能が使えない
① ログインしているか確認する。
② 相手のプロフィールページを開き、「フォローする」ボタンを押す。
③ 反応しない場合は、ページを一度リロードしてから、再度試す。

86年齢制限で機能が使えない
① 登録時の生年月日によって、一部機能(コメントなど)が、保護のため制限されることがあります。
② これは、安全のための正常な仕様です。保護者の方が管理するアカウントであれば、設定内容を確認する。

87学校アカウントで、制限がかかる
① 学校が管理するアカウントでは、教育目的のため、独自の制限が設定されていることがあります。
② 制限の内容や解除については、学校の先生や、管理者に確認する必要があります。



Chapter 09 / Physical Computing

09電子工作連携のトラブル編

ScratchとArduinoの接続やLEDやセンサーが動かない時の対処法

Scratchを、Arduino・Raspberry Pi・micro:bitなどのハードウェアと組み合わせる際のトラブルです。

88mBlockでArduinoが認識されない
① USBケーブルで、Arduinoとパソコンをつなぎ、mBlock右下の「デバイス」欄で、「Arduino Uno」が選ばれているか確認する。
② 認識されない場合、別のUSBケーブル(データ通信対応のもの)に交換して試す。
③ 互換ボード(CH340チップ搭載など)の場合、専用ドライバのインストールが必要なことがあります。

89GPIO拡張機能が出てこない
① Scratch画面左下の「拡張機能を追加」ボタンを押す。
② 一覧から、使っているハードウェアに対応する拡張機能(Raspberry Pi GPIOなど)を選んでクリックする。
③ 追加後、左側のブロックパレットに、新しいカテゴリが表示されているか確認する。

90ブロックを実行しても、LEDが光らない
① 配線を確認する。LEDの長い足(アノード)が、抵抗を経由してピンへ、短い足(カソード)がGNDへつながっているか確認する。
② ブロック内で指定しているピン番号と、実際に配線したピン番号が、一致しているか確認する。
③ mBlockの場合、「ライブモード」と「アップロードモード」のどちらで動かしているか確認する。パソコンを外しても動かしたい場合は、アップロードが必要です。

91センサーの値が取得できない
① センサーへの配線(電源・GND・信号線)が、すべて正しく接続されているか確認する。
② ブロック内で指定しているピン番号が、配線と一致しているか確認する。
③ アナログ値を扱う場合、対応するアナログピン(A0など)を、正しく指定しているか確認する。

92Bluetooth接続ができない(micro:bit)
① micro:bit側に、Scratchと接続するための、専用プログラムが書き込まれているか確認する(初回のみ必要な準備です)。
② パソコン側のBluetoothが、オンになっているか確認する。
③ Scratchの拡張機能画面の案内に沿って、接続の手順をやり直す。

93ファームウェアの更新が必要と言われる
① mBlockの画面に表示される、更新の案内に従い、「アップグレード」ボタンを押す。
② 更新中は、Arduinoを外したり、パソコンをスリープさせたりしない。
③ 更新完了後、一度mBlockを再起動してから、再度接続を試す。

94Raspberry PiでScratchのGPIOブロックがない
① 使っているScratchが、Raspberry Pi OSに標準で入っているバージョンか確認する。
② 「その他」カテゴリのパレットに、GPIO関連のブロックが表示されているか確認する。
③ 表示されない場合、Raspberry Pi OS自体を、最新版に更新することで、解決することがあります。

95ポートが複数あって、どれか分からない
① Arduinoを一度パソコンから抜く。
② mBlockのポート一覧を確認し、その状態でのポートを覚える。
③ Arduinoを再度挿し、新しく増えたポートが、目的のArduinoのポートです。

96ライブモードとアップロードモードを間違える
① 「ライブモード」は、パソコンとつないだまま、リアルタイムに動かす方式です。
② 「アップロードモード」は、Arduino本体にプログラムを書き込み、パソコンを外しても、単体で動く方式です。
③ パソコンを外すと動かなくなる場合は、アップロードができているか確認する。mBlock画面の、モード切り替えボタンを確認する。

97拡張機能の追加が失敗する
① インターネット接続が、安定しているか確認する(拡張機能の追加に、通信が必要な場合があります)。
② 一度ブラウザ(またはmBlock)を再起動してから、再度試す。
③ 繰り返し失敗する場合、別のブラウザ(Chrome、Edgeなど)で試してみる。



Chapter 10 / Performance

10動作が重い・パフォーマンス編

作品が大きくなるほど、動作が重くなることがあります。原因を1つずつ確認しましょう。

98プロジェクトが重くて、動作が遅い
① 使用しているスプライトの数、コスチューム画像のサイズを確認する。大きすぎる画像は、圧縮・縮小する。
② 「ずっと」ブロックの中で、重い処理(大量の計算や、無条件の繰り返し)が、常に実行され続けていないか確認する。
③ 使っていない、大きな音声データが残っていないか、「音」タブを確認し、不要なら削除する。

99スプライトが多いとカクカクする
① クローンを使っている場合、不要になったクローンを、こまめに削除しているか確認する(Q69参照)。
② 画面に映っていない、遠く離れたスプライトの動きも、Scratchは計算し続けています。画面外に出たら「隠す」など、処理を軽くする工夫を検討する。
③ グラフィック効果(色を変える、ぼかすなど)を、多用しすぎていないか確認する。

100ブラウザがクラッシュする
① 他に開いているブラウザのタブを、いくつか閉じて、パソコンのメモリに余裕を作る。
② Scratchのプロジェクト自体が重すぎる場合、Q98・Q99の対策を行った上で、再度開く。
③ それでも改善しない場合、オフライン版のScratchアプリを使うことも、有効な選択肢です。

Chapter 11 / Last Resort

11それでも解決しないときは

!

「最小構成」に戻ってみる

複雑なスクリプトほど、原因の特定が難しくなります。一度、動きに関係する部分だけを、新しいプロジェクトに、最小限だけコピーしてみましょう。そこから1つずつ、ブロックを足していくことで、どの段階で問題が起きたかが、はっきり見えてきます。

編集部想定シナリオ

ゲームを制作していたNさんがいた。敵に触れると、スコアが2つ、3つと一気に増えてしまう不具合に悩んでいた。何度もブロックを見直したが、原因が分からなかった。そこで、スコアを増やす処理の直前に、「今、増やしました」というメッセージを表示するブロックを、一時的に追加した。実行してみると、たった1回の接触で、そのメッセージが3回も表示された。「ずっと」ブロックの中で、当たり判定が、1回の接触中に何度もチェックされ続けていたことが、原因だと分かった。目に見えない繰り返しの速さこそが、原因の正体だったのです。

Scratch公式サイトには、「Discuss Scratch」という、世界中のユーザーが集う掲示板があります。同じようなトラブルに、すでに誰かが遭遇し、解決策を投稿していることも多いので、困ったときは、検索してみることもおすすめします。

関連記事・参考資料

基礎を学べる記事

  1. YOFUKASI LAB「Scratch入門|使い方・始め方を初心者向けにやさしく解説」2026年, https://yofukasi-lab-wp.com/2026/09/13/scratch-getting-started/
  2. YOFUKASI LAB「Scratchで電子工作入門|LED・センサーを動かして学ぶプログラミング」2026年, https://yofukasi-lab-wp.com/2026/09/13/scratch-electronics-getting-started/

応用・関連記事

  1. YOFUKASI LAB「Scratchでアクションゲームを作る方法|ジャンプ・重力・当たり判定」2026年, https://yofukasi-lab-wp.com/2026/09/14/scratch-action-game/
  2. YOFUKASI LAB「電子工作とプログラミング入門|初心者は何から始める?」2026年, https://yofukasi-lab-wp.com/2026/09/12/electronics-programming-getting-started/

参考資料(外部・一次情報)

  1. Scratch公式サイト, https://scratch.mit.edu/
  2. Scratchウィキ「トラブルシューティング関連ページ」, https://en.scratch-wiki.info/wiki/Category:Troubleshooting
  3. Discuss Scratch(公式フォーラム), https://scratch.mit.edu/discuss/

※本記事は個人の学習用途を対象にしています。教育機関での利用については、各校・各団体の方針もあわせてご確認ください。


関連記事

特集記事

コメント

この記事へのコメントはありません。

TOP
CLOSE