Board logo

標題: [發問] Index問題 [打印本頁]

作者: basarasy    時間: 2011-3-1 15:27     標題: Index問題

請問大大
我在sheet1 的USERFORM 寫了這句

TextBox2.Value = WorksheetFunction.Index(Sheet2.Range(Cells(2, 1), Cells(MYno, 14)), .Range("Z1"), 4)

說Sheet2.Range(Cells(2, 1), Cells(MYno, 14)) 有錯, 請問大大有什麼方法可以解決?
作者: GBKEE    時間: 2011-3-1 16:08

本帖最後由 GBKEE 於 2011-3-1 16:13 編輯

回復 1# basarasy
請開啟一新檔,在Sheet1 ,Sheet2,Sheet3,ThisWorkbook 的CodePane 都貼上 下列的程式碼.
各自 按F8 執行試試看哪裡會錯誤,哪裡會正常.
  1. Sub Ex()
  2. MsgBox Sheet2.Range(Cells(2, 1), Cells(1, 14)).Address
  3. End Sub
複製代碼
沒出錯時 ,請回到Excel視窗 看看作用中的工作表是哪一個
作者: basarasy    時間: 2011-3-1 16:22

回復 2# donald

謝謝你.
想不到Cells前面都要加Sheet2 ><
作者: basarasy    時間: 2011-3-1 16:26

回復 3# GBKEE

Sheet2.Range(Cells(2, 1), Cells(MYno, 14))出錯時 以試了 在sheet2  run不會錯.
但是我不知改什麼地方><
作者: GBKEE    時間: 2011-3-1 16:42

回復 5# basarasy
按照2樓 donald 改正就可以阿.
要告訴你是
在程式碼中  CELL 或 RANGE 沒指明父層(工作表) ,就傳回作用中的的工作表 (ActiveSheet)的 CELL 或 RANGE位置
如執行程式碼時   ActiveSheet 是 Sheet1
Sheet2.Range(Cells(1, 1), Cells(2, 1)) 會出錯
作者: basarasy    時間: 2011-3-1 16:51

回復 6# GBKEE

謝謝GBKEE 大大解說
本以為Range前加Sheet2 , Range內的東西都會是Sheet2 ><




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)