Недавно Владимир (ZVI) продемонстрировал надежный метод для записи текста в буфер обмена. Для Вашего случая:
Код
Option Explicit
' Объединяет значения в выделенных ячейках через пробел и копирует в буфер обмена.
Sub SelectionToClipBoard()
Dim arr(), i As Long, cell As Range
On Error GoTo ErrLabel
ReDim arr(1 To Selection.Cells.Count)
For Each cell In Selection.Cells
i = i + 1
arr(i) = cell.Value
Next cell
SetClipBoardText Join(arr)
ErrLabel:
End Sub
' Копирует Text в буфер обмена Windows.
Function SetClipBoardText(ByVal Text As Variant) As Boolean
SetClipBoardText = CreateObject("htmlfile").ParentWindow.ClipboardData.SetData("Text", Text)
End Function