看板 Office 關於我們 聯絡資訊
軟體:excel,版本:2003 小弟有數十個檔案如下: 座號 姓名 01 02 03 04 05 01 xxx A A B D C 02 xxx D B B A . . 40 xxx D B C K D 需要將檔案輸出為txt檔,把ABCD→1234,空格和非ABCD→9,並取消姓名欄位 也就是如下的TXT檔 01 11243 02 42921 . . 40 42394 ======================================================================= 小弟自己是先刪掉姓名欄,用另存新檔和取代慢慢做,但是這樣也要做個數十次 重點是其他長輩電腦能力不足,所以想寫個程式直接完成上述工作。 網路上有前輩寫了巨集,但是因為他的EXCEL檔長這樣 座號 姓名 答案 01 xxx AABDC 02 xxx DB BA . . 40 xxx DBCKD 所以我無法一次指定答案欄位 ===========================以下是他寫的巨集摘要=========================== '要輸入座號欄位、學生答案欄位、第一筆資料起始欄位 100分的人的橫欄 queNum = Application.InputBox("請輸入題目數量", "輸入", 50, 60, 30) For i = 1 To 1000 numArr(i - 1) = Cells(i, 1) ansArr(i - 1) = Cells(i, 3) 想請問這邊怎麼改? ansArr(i - 1) = Trim(ansArr(i - 1)) '把有空白的變成空的 '非ABCD的都換成9 '把ABCD換成1234 '==========新增工作表========== oldname = ActiveSheet.Name newname = ActiveSheet.Name & "_" & Worksheets.Count Worksheets.Add After:=Sheets(Sheets.Count) ActiveSheet.Name = newname '============================ '設定儲存格格式為文字 '貼資料到儲存格 For i = 1 To UBound(ansArr) If ansArr(i) <> "" Then Cells(i, 1) = numArr(i) & " " & ansArr(i) End If Next '新增資料表並存在文字檔 input.txt -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.114.130
soyoso:http://goo.gl/6T07Y 試試 10/10 23:14
sendohandy:感謝您,不過我執行巨集沒有任何變化 10/11 07:53
sendohandy:我研究一下VBA內容再看看,謝謝~ 10/11 07:53