[VBA ] excel與VBA的問題求救

看板Visual_Basic作者 (gouf)時間19年前 (2005/07/01 01:06), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
1.我希望把某工作表的名稱設為某儲存格的數值,該儲存格的資料型式是日期資料, 如2000年1月1日。語法大致如下: y = CStr(Worksheets(1).Cells(1, 3).Value) Worksheets(3).Name = y 我知道excel的工作表名稱內不能含"/"符號,所以日期儲存的格式特別用"2000年 1月1日"而非"2000/01/01",但是vba在執行時似乎還是將日期資料視作"2000/01/01" 的格式,因此說我語法錯誤。那我要怎麼樣才能把工作表名稱命名為某天的日期? (手動key in除外) 2.要怎麼樣才能讓vba在執行到一半時先將目前的活頁簿存檔?因為程式可能要跑 很久,外一中途當機,沒中途存檔的話豈不欲哭無淚? 3.我有一些股票交易資料的格式如下: 日期 代號 2000/01/01 1000 2000/01/01 1001 2000/01/01 3002 2000/01/02 1000 2000/01/02 2303 2000/01/03 1000 2000/01/03 2323 2000/01/04 2035 . . . 我希望自動把每一天的資料放到不同工作表,例如2000/01/01的交易資料放到工作表 "2000年1月1日"、2000/01/02的交易資料放到工作表"2000年1月2日",以此類推。 有沒有不用寫vba,靠excel內建的功能就可完成的方法?(可能有人會說把資料用日期 篩選後再一天一天貼上,問題是我的資料有很很多年,每年有兩百多天,一天一天貼 會貼到死)。如果要靠vba才能完成,有沒有比較簡單的寫法? 4.在vba裡面,要把一張工作表某範圍的內容,貼到另一張工作表去,有沒有比較快的 寫法?(我知道可以用array加上for loop來達成,可是我想問有沒有copy、past之類的 指令?) 謝謝大大把我的問題看完,能解決小弟的疑惑的話就更感激囉。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.203.39.78
文章代碼(AID): #12n2QTYI (Visual_Basic)
討論串 (同標題文章)
文章代碼(AID): #12n2QTYI (Visual_Basic)