看板 Office 關於我們 聯絡資訊
(若是和其他不同軟體互動之問題 請記得一併填寫) 軟體:Excel 版本:Office 2010 如何改寫為當讀取超過65535時 , 寫到Sheet2 , 3 , 4............. 以下是程式碼 Sheets("Sheet1").Select '----------------------------------------------------- Application.ScreenUpdating = False Do If xChk = 0 Then xFile = Dir(ThisWorkbook.Path & "\*.csv") If xFile = "" Then MsgBox "※找不到 CSV 檔案! ", 0 + 16: Exit Sub xChk = 1 Else xFile = Dir If xFile = "" Then Exit Do End If '---------------------------------------------- uFile = ThisWorkbook.Path & "\" & xFile Set uHead = Range("A65536").End(xlUp) uHead.Value = xFile Set uHead = uHead(2, 1) With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & uFile, Destination:=uHead) .AdjustColumnWidth = False .TextFileOtherDelimiter = ":" '冒號 .TextFileCommaDelimiter = True '逗號 .Refresh BackgroundQuery:=False .Delete End With uHead.Interior.ColorIndex = 6 '每筆第一格加〔黃色〕底 NEXT_LINE: Loop -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.241.96.6 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1487161425.A.8EF.html
soyoso: 將uHead內的65536改為1048576,寫判斷,如uHead列號超過 02/15 20:46
soyoso: 65535時,新增個工作表sheets.add,並將超過的部分資料移 02/15 20:48
soyoso: 至新的工作表內,並重新判斷新工作表內最後一列的儲存格 02/15 20:48
soyoso: 另外如工作表名更名上worksheet.name 02/15 20:52
soyoso: 列號取得range.row,會傳回範圍中第一個區域中的第一列的 02/15 21:01
soyoso: 列號 02/15 21:01
aup65797: 有範例可以參考嗎? 02/15 21:53
soyoso: 上述sheets.add、worksheet.name、range.row丟goolge就有 02/15 22:00
soyoso: 範例 02/15 22:00
aup65797: 請問要選擇Sheets("工作表n").Select..n為常數如何使用? 02/20 21:22
aup65797: Sheets("工作表" & n).Select==>答案 02/20 21:28
aup65797: 請問如何把Sheets.Count清為零? 02/22 07:31