| 
    
     |  | ”実行時エラー:91 オブジェクト変数またはWithブロック変数が設定されていません”が出る時があります。 
 ・オブジェクト型変数はプロジェクト内で共通参照できるように、Publicで宣言。
 ブックオープン時に1回だけSetを実施。
 ・ワークシート2に2つあるボタン(チェックボックスの作成、削除)を、交互に動かすと早い時は1往復くらいで、たまに3往復目くらいまで行く時がありますが上記エラーになってしまいます。
 (エラーが発生する回数、エラーが発生する場所とも不特定。場所はいずれもWsを参照している箇所ですが、複数個所あります)
 
 何か解放漏れとかですか?
 
 ちなみに、Workbook_BeforeClose時に、Set Wb = Nothing、Set Ws1 = Nothing、Set Ws2 = Nothingはしてます。
 
 力不足のため、ご教授のほどよろしくお願いします。
 
 ■標準モジュール
 Public Wb As Workbook       'ワークブック
 Public Ws1 As Worksheet       'ワークシート
 Public Ws2 As Worksheet       'ワークシート
 
 ■ワークブックプロシージャ
 Private Sub Workbook_Open()
 
 Set Wb = Workbooks("Book.xlsm")
 Set Ws1 = Wb.Worksheets("Sheet1")
 Set Ws2 = Wb.Worksheets("Sheet2")
 
 Ws1.Cells(1, 1).Value
 Ws2.Cells(1, 1).Value
 
 End Sub
 
 ■ワークシート2
 Private Sub チェックボックス作成_Click()
 For CheckBoxIndex = 1 To XX
 
 'チェックボックスを作成する
 With Ws2.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, DisplayAsIcon:=False)
 .Object.Caption = Ws2.Cells(省略)
 以下省略
 End With
 
 Next CheckBoxIndex
 
 End Sub
 
 Private Sub チェックボックス削除_Click()
 
 For Each tCtrl In Ws2.Shapes
 
 If Left(tCtrl.Name, 8) = "CheckBox" Then
 Ws2.Shapes(tCtrl.Name).Delete
 End If
 
 Next
 
 End Sub
 
 |  |