彰化一整天的論壇

 找回密碼
 立即註冊
查看: 172|回復: 6

如何指定sheet執行程式

[複製鏈接]
發表於 2019-4-3 16:25:46 | 顯示全部樓層 |閱讀模式
本帖最後由 rcaa1234 於 2019-4-3 16:28 編輯

月份10804
初始星期5


x = Sheets("週統計").Cells(2, 1)    <-月份(sheet顯示名稱)
Sheets(x).Cells(s1, s2) ..........................................


我的sheet名稱都是用月份標示, 10801、10802、10803、…這樣
原本想說用 Sheets(x) 來指定Sheet
結果發現好像不能這樣用
巨集會把x判定成數字,直接跳錯誤訊息
請問有什麼方式可以修正,謝謝




回復

使用道具 舉報

發表於 2019-4-3 17:41:08 | 顯示全部樓層
您好,
    請參考
http://wordpress.bestdaylong.com/blog/archives/17038
ExcelVBA變數有沒有宣告有差嗎?
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2019-4-4 22:02:18 | 顯示全部樓層
本帖最後由 rcaa1234 於 2019-4-4 22:10 編輯

您好,感謝回覆
我有做x as str的宣告
但仍然會出現超過索引的錯誤訊息
應該還是把他判定成數字

所以才會想說是不是語法格式上的修正或者那邊要再設定才不會誤判
再麻煩前輩指點一下,謝謝!

附上語法
就卡在最後一行…
如果把x換成"10804"全都可順跑,但換成x就不行了

Dim x As String


x = Sheets("週統計").Cells(2, 1)
y = Sheets("週統計").Cells(2, 2)
Sheets("週統計").Cells(2, 3) = ThisWorkbook.Sheets.Count


'For i = 1 To ThisWorkbook.Sheets.Count
'    If Sheets(i).Name = x Then



        For s1 = 5 To 200
            For s2 = 5 To 200
             If Sheets(x).Cells(s1, 2) = Sheets("週統計").Cells(s2, 2) Then

回復 支持 反對

使用道具 舉報

發表於 2019-4-4 22:17:02 | 顯示全部樓層
rcaa1234 發表於 2019-4-4 22:02
您好,感謝回覆
我有做x as str的宣告
但仍然會出現超過索引的錯誤訊息

您好,
    方便上傳有問題的測試檔案嗎?
回復 支持 反對

使用道具 舉報

 樓主| 發表於 2019-4-4 23:09:51 | 顯示全部樓層
已上傳,再麻煩指點一下,謝謝

網銷日銷售-TEST.xlsm

31.41 KB, 下載次數: 29

回復 支持 反對

使用道具 舉報

發表於 2019-4-5 10:45:25 | 顯示全部樓層
rcaa1234 發表於 2019-4-4 23:09
已上傳,再麻煩指點一下,謝謝

您的儲存格抓錯了.所以才會出不來。
excel20190405.jpg

1.您抓到是[初始星期]


excel20190406.jpg

2.cells的是cells(列,行)

網銷日銷售-TEST.xlsm

38.41 KB, 下載次數: 0

售價: 1 金錢  [記錄]  [購買]

回復 支持 反對

使用道具 舉報

 樓主| 發表於 2019-4-5 21:37:48 | 顯示全部樓層
感謝,原來是犯了低級的錯誤啊…謝謝!
回復 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

 ㄚ母滴雞湯
 員林香純滴雞精

Archiver|手機版|小黑屋|彰化一整天的論壇(Excel,Office)  |网站地图

GMT+8, 2019-8-25 07:16 , Processed in 0.133911 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表