| 
    
     |  | ▼sinzo さん: >>With clipboard
 >>  .SetText Range(Range("D10"), Range("d" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible)
 >>  .PutInClipboard
 >>  .GetFromClipboard
 >>End With
 >
 >簡単なのはこれで
 >Range(Range("D10"), Range("d" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).Copy
 >
 >区切り文字で結合するなら、こんなかんじかな
 >Dim aRng As Range, tRng As Range
 >Dim Txt As String
 >Txt = ""
 >For Each aRng In Range(Range("D10"), Range("D" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).Areas
 > For Each tRng In aRng
 > Txt = Txt & "," & tRng.Text
 > Next
 >Next
 >Txt = Replace(Txt, ",", "", 1, 1)
 >
 > Dim clipboard  As New DataObject
 > With New DataObject
 >  .SetText Txt
 >  .PutInClipboard
 >  '.GetFromClipboard
 > End With
 
 確かに下記の方法だと簡単ですが、処理が終わると(オートフィルタを外す)と
 クリップボードに格納してあった値はなくなってしまいます。
 クリップボードに保持したままエクセルを閉じたいのですが・・・
 
 >簡単なのはこれで
 >Range(Range("D10"), Range("d" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).Copy
 >
 
 |  |