• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:全てのフォームを削除したい アクセス2010)

アクセス2010でフォームを削除する方法

このQ&Aのポイント
  • アクセス2010でフォームを削除する際、一部のフォームが削除できないエラーが発生する場合があります。
  • このエラーは、フォームを削除することによって順番が狂い、ループが初期化されないため発生します。
  • この問題を解決するためには、フォームを削除する前にループの初期化を行う必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

探せばいろいろと転がっていますが、 Dim i As Integer For i = CurrentProject.AllForms.Count - 1 To 0 Step -1 DoCmd.DeleteObject acForm, CurrentProject.AllForms(i).Name Next i では? メッセージを残すのは御随意に。

wwgkubejswcr
質問者

お礼

回答ありがとうございました。

その他の回答 (2)

  • suzukikun
  • ベストアンサー率28% (372/1325)
回答No.3

Dim delForm as Object とかして delForms = CurrentProject.AllForms にすれば行けると思いますけど。右辺の名前は何でも良いんですが。 明らかに左側はIntegerではないですよね?

wwgkubejswcr
質問者

お礼

回答ありがとうございました。

  • suzukikun
  • ベストアンサー率28% (372/1325)
回答No.1

最初にCurrentProject.Allformsを変数にいれておいてからその変数を使ってFor Eachでけしていけばいいのでは?

wwgkubejswcr
質問者

お礼

早速のご回答有難うございます。 >最初にCurrentProject.Allformsを変数にいれておいて とは、 Dim i As Integer i = CurrentProject.AllForms For Each obj In i こうするということでしょうか? なぜかこれだと、.AllFormsの部分で、引数を省略できませんというエラーになってしまいます。 最初にCurrentProject.Allformsを変数にいれるというやり方を教えていただけますか? よろしくお願いします。