[算表] VBA抓取分頁名稱的函數

看板Office作者 (鹿丸)時間12年前 (2013/10/20 14:32), 編輯推噓0(0016)
留言16則, 2人參與, 最新討論串1/1
軟體:Excel 版本:2010 1. 想請教VBA裡面,有沒有抓取現在工作表「名稱」的函數? 2. 有沒有方法可以分析工作表名稱的數值 說明: 我們有時候在做運算時,會用到不同工作表的數據來源, 假設我點開一月份資料,工作表名稱 201301 (還有其他工作表201302, 201303...etc) 那麼工作表的來源就會變成 201301!XXX儲存格XXX ^^^^^^ 由於需要分析月份的增減(MoM), 所以有沒有可能使用VBA自動去帶出MoM的計算? 例如現在十月,如果能抓到現在最新的工作表名稱201310, 那麼最簡單的方式是用這個數值-1, 讓VBA去抓201309的值,兩月的數值再相除即可得MoM (但是12月跨到次年一月怎麼辦呀?) -- 我想隨便找個工作,隨便賺點錢,然後和不美又不醜的普通女人結婚; 生兩個小孩:第一個是女孩,第二個是男孩... 等長女結婚,兒子也能獨當一面的時候,就從工作退休... 之後...每天過著悠閒隱居生活,然後比自己的老婆還要早老死, 我就是想過這種生活,普普通通的過完一生.... 改編自 §奈良鹿丸 § -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.10.148

10/20 17:10, , 1F
1.ActiveSheet.Name
10/20 17:10, 1F

10/20 17:13, , 2F
activesheet.name
10/20 17:13, 2F

10/20 17:23, , 3F
2.可,取得PivotTables在用GetData
10/20 17:23, 3F

10/20 17:35, , 4F
DateSerial(年,月,0)就是上個月的最後一日
10/20 17:35, 4F

10/20 17:36, , 5F
在用format(值,"yyyymm"),試試
10/20 17:36, 5F
感謝~晚點來試試! 12月跨年到1月好像沒辦法? ※ 編輯: Uber 來自: 114.32.10.148 (10/20 17:40)

10/20 17:51, , 6F
DateSerial(年,月,32)再配合format就是下個月
10/20 17:51, 6F

10/20 17:53, , 7F
總結,目前取得工作表名201310
10/20 17:53, 7F

10/20 17:54, , 8F
要上個月的話format(dateserial(left(表名,4),mid(表名,5),
10/20 17:54, 8F

10/20 17:54, , 9F
0),"yyyymm")
10/20 17:54, 9F

10/20 17:55, , 10F
要下個月就是將0改32就是
10/20 17:55, 10F

10/20 18:00, , 11F
將mid(表名,5),0改mid(表名,5)-1,1也是上個月
10/20 18:00, 11F

10/20 18:01, , 12F
將mid(表名,5),32改mid(表名,5)+1,1也是下個月
10/20 18:01, 12F

10/20 18:04, , 13F
沒有像time(,,)可以直接計算的函數嗎
10/20 18:04, 13F

10/20 18:08, , 14F
如果相減是89就會隔年
10/20 18:08, 14F

10/20 18:13, , 15F
函數time在VBA可用TimeSerial,VBA打上time或是time()是目
10/20 18:13, 15F

10/20 18:13, , 16F
前的時間
10/20 18:13, 16F
文章代碼(AID): #1IOta9xA (Office)
文章代碼(AID): #1IOta9xA (Office)