| 
    
     |  | ichinose さま 
 ありがとうございました!!
 
 思うとおりの動作が確認できました。
 私が、1日半悩んでいたことだったので、とてもすっきり致しました。
 ありがとうございました。
 
 それにしても...
 本当にすぐに解答をよせてくださる、ichinoseさんに感謝です。
 ありがとうございました。
 
 
 >↑これだとリストボックスの最後のメンバを選択しない限り、1の処理はおこないませんよ。
 >又、Sheets()内は、シート名のカンマ区切りの文字列で選択できましたっけ?
 >(マクロの記録を使って確認して下さい)
 
 
 実はまだ、確認段階だったのです。
 
 >  Sheets(theItem).Select
 >  Sheets(theItem).Copy
 
 のコードの前で、メッセージボックスにtheItemの内容を表示させて
 確認していた段階でした。
 そこで、悶々と悩んでいたのです。
 
 ほんとうにすっきりと致しました。
 ありがとうございました。
 私も、もっともっと勉強します。
 
 
 >
 >以下のようにして確認して下さい。
 >'=========================================================
 >Private Sub CommandButton1_Click()
 >  Dim theItem() As String
 >  Dim i As Integer
 >  Dim sdx As Long
 >  sdx = 0 '選択してメンバ数
 >  With ListBox1
 >   For i = 0 To .ListCount - 1
 >    If .Selected(i) = True Then
 >      ReDim Preserve theItem(sdx)
 >      theItem(sdx) = .List(i)
 >      sdx = sdx + 1
 >      End If
 >    Next i
 >   End With
 >  If sdx > 0 Then
 >    With ThisWorkbook
 >     'コピーが目的ならSelectの必要はありませんよ
 >     .Sheets(theItem()).Copy
 >     End With
 >    End If
 >  Erase theItem()
 >End Sub
 
 
 |  |