- 帖子
- 29
- 主題
- 5
- 精華
- 0
- 積分
- 82
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- OFFICE2003
- 閱讀權限
- 20
- 註冊時間
- 2012-6-14
- 最後登錄
- 2020-9-14
|
4#
發表於 2017-9-16 16:43
| 只看該作者
本帖最後由 hu0318s 於 2017-9-16 16:48 編輯
回復 3# hu0318s
dear 大大:剛剛我有練習去處理,在10筆以內都比較沒問題,但像我常常收到檔案都是上千筆,變成好像只有前10筆可以完成 其他都會清空
我有練習去修改了解 ,但我發現我好想搞砸,可以請教大大. 在這邊的offiset 我要如何修改才可以把資料寫進儲存格 Cells(r, 1).Offset(, i).Resize(UBound(ay(i)) + 1, 1) = Application.Transpose(ay(i))
我附上我收到的檔案
下面是
我修改的- Sub 取消換行()
- Dim A As Range, ar()
- Set dic = CreateObject("Scripting.Dictionary")
- With ActiveSheet
- k = .Range(.[A1], .[A1].End(xlDown)).Count
- For Each A In .Columns("A:A").SpecialCells(xlCellTypeConstants)
- ReDim ar(k)
- For i = 0 To k - 1
- ar(i) = Split(A.Offset(i, i), Chr(10))
- Next
- dic(A.Value) = ar
- Erase ar
- Next
- .Cells.ClearContents
- r = 1: t = 1
- For Each ky In dic.keys
- For i = 0 To k - 1
- ay = dic(ky)
- t = IIf(UBound(ay(i)) + 1 > t, UBound(ay(i)) + 1, t)
- .Cells(r, 1).Offset(i, i).Resize(UBound(ay(i)) + 1, 1) = Application.Transpose(ay(i))
- Next
- r = r + t
- Next
- End With
複製代碼 |
-
-
搞砸板.JPG
(72.53 KB)
-
-
合併儲存格1.rar
(923.8 KB)
|