|    | 
     ▼悩める老人 さん: 
こんばんは。 
記述されたコードは、コントロールを 
動的に貼り付けたコードです。 
ユーザーフォームのInitialize(イベントで行っていますから 
ユーザーフォームが表示されている間は、Checkboxが表示されていますが、 
ユーザーフォームがUnloadされれば、ユーザーフォームにコントロールは 
残りません。よく考えれば、御理解頂けると思います。 
 
 
>追加したチェックボックスを編集する解決方法をご教示いただければ大変うれしく思います。 
 
Excelバージョンによって設定方法が異なると思いますが、 
Excel2002以上では、設定が必要です。Excel2000なら、そのままでよいです。 
 
 Excel2002での設定 
 「ツール」----「マクロ」----「セキュリティ」とクリックし、 
 セキュリティダイアログを表示させます。 
 信頼のおける発行元 タブにて、 
 Visual Basic プロジェクトへのアクセスを信頼する チェックを入れて 
 OKボタンをクリックします。 
 設定は、以上です。 
 
 
 対象ユーザーフォーム UserForm1 
 
 標準のモジュールに 
 
'============================================================= 
Option Explicit 
Sub UserForm_add_checkbox() 
  Dim i As Long 
  Dim h As Single 
  Dim chek As MSForms.CheckBox 
  h = 18 
  With ThisWorkbook.VBProject.VBComponents("userform1").Designer 
    For i = 1 To 220 
     Set chek = .Controls.Add("Forms.checkbox.1", "checkbox" & i, True) 
     With chek 
       .Top = i * h 
       .Left = 10 
       .Width = 108 
       .Height = h 
     End With 
     .ScrollBars = fmScrollBarsVertical 
     .ScrollHeight = 221 * h + 10 
    Next 
  End With 
End Sub 
 
これで試してください。 
 
尚、実行後は、 
Visual Basic プロジェクトへのアクセスを信頼する チェックをはずしてください。 
 
 | 
     
    
   |