返回列表 上一主題 發帖

[發問] 資料合併後加到剪貼簿

回復 1# joslau
  1. Sub Ex()
  2.   Dim rngSelect As Range, sMerge As String
  3.   
  4. SELECT_RANGE_AGAIN:
  5.   On Error Resume Next
  6.   Set rngSelect = Application.InputBox(prompt:="請選擇單列範圍或單欄範圍", Default:=Selection.Address, Type:=8)
  7.   On Error GoTo 0
  8.   If rngSelect Is Nothing Then Exit Sub
  9.   rngSelect.Select
  10.   
  11.   With rngSelect
  12.     If .Rows.Count = 1 And .Columns.Count = 1 Then  '單格
  13.       sMerge = rngSelect.Value
  14.     ElseIf .Rows.Count = 1 And .Columns.Count > 1 Then  '單列
  15.       sMerge = Join(Application.Transpose(Application.Transpose(rngSelect.Value)), ",")
  16.     ElseIf .Rows.Count > 1 And .Columns.Count = 1 Then  '單欄
  17.       sMerge = Join(Application.Transpose(rngSelect.Value), ",")
  18.     Else
  19.       GoTo SELECT_RANGE_AGAIN
  20.     End If
  21.   End With
  22.   
  23.   With New DataObject '需引用 Microsoft Form Object Library
  24.     .SetText sMerge
  25.     .PutInClipboard
  26.   End With
  27. End Sub
複製代碼

TOP

回復 3# wufonna
插入一個空白表單,再看看是否自動引用了;如果還是沒有,手動瀏覽加入 C:\windows\system32\FM20.DLL。

TOP

回復 8# wufonna
我是指VB編輯器>工具>設定引用項目>瀏覽,自己選該檔案,但跟你這code應該是同樣意思

TOP

        靜思自在 : 稻穗結得越飽滿,越會往下垂,一個人越有成就,就要越有謙沖的胸襟。
返回列表 上一主題