看板 Office 關於我們 聯絡資訊
軟體: excel 版本: office365 最近寫了一點vba來幫忙整理數據 但是在作圖的時候遇到了問題 一樣的code,在單一檔案執行,出來的是預期的圖 https://imgur.com/Fkr0YCU.jpg
斜直線,I-V 圖 但是另外加了一次讀資料夾內所有數據檔 整理,並把結果存成獨立worksheet的code後 在執行到作圖的部份時,出來的圖卻抓到了不對的資料 https://imgur.com/1oKGo3k.jpg
變成V1,I1,V1對I作圖... 作圖部份的code在此:https://pastebin.com/CtXQWgw4 我是用錄製的,再做些許修改 用逐行執行debug的時候,發現是在line5~7那裡出來的圖就抓錯資料了 感謝看到最後的您 希望能有人解惑 -- You make the choice, and this is your price. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.114.20.139 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1555928906.A.6C2.html
soyoso: 看是否也提供部分資料(會產生非預期圖表)的部分,配合已有 04/22 18:38
soyoso: 的巨集來模擬也比較清楚 04/22 18:39
全部的code: 模組一https://pastebin.com/KHGxYxTr 模組二https://pastebin.com/mekir4T6 模組一是要把指定的資料夾內所有csv檔都複製到新開的workbook 每個檔案一個worksheet 我預期的流程是把csv檔複製到新的worksheet後,把raw data做處理 再開啟下一個csv重複一樣的流程 ※ 編輯: jrsh0906 (36.226.176.43), 04/22/2019 20:45:57
soyoso: 有完整巨集,再提供部分資料(會產生非預期圖表),這樣測試 04/22 23:19
soyoso: ,來看出來的圖卻抓到了不對的資料的原因是什麼,會比較清 04/22 23:20
soyoso: 楚 04/22 23:20
soyoso: 模組二,程序作圖的部分,setsourcedata來源的範圍,不指 04/23 07:59
soyoso: 定整欄,如要作圖的資料筆數固定的話,就以a1:a100,b1:b10 04/23 08:00
soyoso: 0,...常數的方式。 04/23 08:01
soyoso: 如不固定以range.end、range.find,連續資料的話也可以工 04/23 08:01
soyoso: 作表函數count或counta來取得最後一筆資料的列號 04/23 08:02
soyoso: range.end和range.find為取得儲存格,要回傳列號的話,則 04/23 08:04
soyoso: 以range.row 04/23 08:04
補充: 在S大幫忙下,找到了問題 之所以單檔執行都正常(作圖正常、沒有多餘的資料留存) 多檔則會出問題 是因為開啟csv的方式不一樣導致 先前都沒有注意到這,所以都de不出bug https://imgur.com/g3LzNiQ.jpg
A是多檔執行時,用匯入精靈匯入的結果 B則是單檔執行時,我自己在資料夾開啟csv檔的結果 ※ 編輯: jrsh0906 (140.114.20.139), 04/23/2019 13:12:07