スタック領域が不足しています。(Visual Basic)
スタックは、実行中のプログラムの要求に応じて、動的に拡張および縮小されるメモリの作業領域です。 その制限を超えました。
このエラーを解決するには
プロシージャの入れ子が深すぎないことをチェックします。
再帰プロシージャが正常に終了することを確認します。
ローカル変数で、使用可能な量よりも多くのローカル変数領域が必要な場合は、一部の変数をモジュール レベルで宣言してみてください。 また、
Static
をProperty
、Sub
、またはFunction
キーワードの前に付けて、プロシージャ内のすべての変数を静的に宣言することもできます。 または、Static
ステートメントを使用して、プロシージャ内で個々の静的変数を宣言することもできます。固定長文字列は可変長文字列よりも多くのスタック領域を使用するため、一部の固定長文字列を可変長文字列として再定義します。 スタック領域を必要としない、モジュール レベルで文字列を定義することもできます。
Calls
ダイアログ ボックスを使用して、スタック上でアクティブになっているプロシージャを表示して、入れ子になったDoEvents
関数呼び出しの数をチェックします。既にスタックにあるイベント プロシージャを呼び出すイベントをトリガーすることによって、"イベントのカスケード" が発生していないことを確認します。 イベントのカスケードは、未終了の再帰プロシージャ呼び出しに似ていますが、コード内の明示的な呼び出しではなく Visual Basic によって呼び出しが行われるため、目立ちません。
Calls
ダイアログ ボックスを使用すると、スタック上でアクティブになっているプロシージャが表示されます。
関連項目
.NET
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示