Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


55011 / 76732 ←次へ | 前へ→

【26501】Re:チェックボックスを使って複数シートをコ...
回答  つん E-MAIL  - 05/7/7(木) 11:05 -

引用なし
パスワード
   ▼MASAOU さん:
こんにちは。

>以下の様な操作をしたいのですが、よくわかりません。
>ご教授をお願い致します。
>Book1.xlsにAAA,BBB,CCC,DDD,EEEのシートがあるとします。
>ユーザーフォームにはそれぞれのシート名がついたチェックボックスがあります。
>例えば、AAA,CCC,DDDのチェックボックスを選択して、その選択された
>シートだけを別のブック(Book2.xls)にコピーしたいのです。
>チェックボックスを複数選択した時の処理がわかりません。よろしくお願い
>致します。

チェックボックスのキャプションをシート名にして、
チェックボックス自体の名前は連番付きのにしたら、以下のように出来るかとおもいます。

  Dim strSH() As String
  Dim i As Long
  Dim k As Long
  
  k = 0
  
  For i = 1 To 5
    If Me.Controls("CheckBox" & i).Value = True Then
      k = k + 1
      ReDim Preserve strSH(1 To k)
      strSH(k) = Me.Controls("CheckBox" & i).Caption
    End If
  Next i
  
  With Workbooks("Book2.xls")
    ThisWorkbook.Sheets(strSH).Copy after:=.Sheets(.Worksheets.Count)
  End With

いかがでしょうか?

3 hits

【26500】チェックボックスを使って複数シートをコ... MASAOU 05/7/7(木) 10:19 質問
【26501】Re:チェックボックスを使って複数シートを... つん 05/7/7(木) 11:05 回答
【26503】Re:チェックボックスを使って複数シートを... MASAOU 05/7/7(木) 11:44 お礼
【26506】Re:チェックボックスを使って複数シートを... MASAOU 05/7/7(木) 12:38 質問
【26507】Re:チェックボックスを使って複数シートを... Jaka 05/7/7(木) 12:57 発言
【26508】Re:チェックボックスを使って複数シートを... MASAOU 05/7/7(木) 13:04 発言
【26511】Re:チェックボックスを使って複数シートを... Jaka 05/7/7(木) 13:18 発言
【26512】Re:チェックボックスを使って複数シートを... つん 05/7/7(木) 13:31 発言
【26514】Re:チェックボックスを使って複数シートを... MASAOU 05/7/7(木) 14:16 お礼

55011 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free