[VBA] EXCEL VBA 此處需要物件

看板Visual_Basic作者 (憨廷)時間5年前 (2019/03/04 16:03), 編輯推噓1(103)
留言4則, 3人參與, 5年前最新討論串1/1
請教我使用EXCEL VBA練習寫了底下的程式,但在執行到d2.Range("B1").Select出現 執行階段錯誤'424':此處需要物件,不知有前輩知道這個問題不 Private Sub CommandButton1_Click() Application.ScreenUpdating = False Set d1 = Workbooks("股票監控資料庫.xlsm").Worksheets("測試") Set d2 = Workbooks("股票監控數值.xlsm").Worksheets("月營收華邦電") Workbooks.Open Filename:="D:\(2) Other\(11) 股票\(1) 個人整理分析資料\股票 監控數值.xlsm", UpdateLinks:=False, ReadOnly:=True Workbooks("股票監控數值.xlsm").Activate d2.Range("B1").Select d2.Range("B1").Value = d1.Range("A6") MsgBox "完成更新" Application.ScreenUpdating = True End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.51.26.238 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1551686605.A.75E.html

03/04 16:11, 5年前 , 1F
先Open再Set d2,最好明確定義Dim d2 as Worksheet
03/04 16:11, 1F

03/04 16:42, 5年前 , 2F
Z大謝謝幫忙,根據您的建議已順利解決了
03/04 16:42, 2F

03/10 17:49, 5年前 , 3F
如果d2工作表不是active狀態可能也會出錯
03/10 17:49, 3F

03/10 17:50, 5年前 , 4F
既然已經可以指定range("B2").value了,可以不用先select
03/10 17:50, 4F
文章代碼(AID): #1SVDlDTU (Visual_Basic)
文章代碼(AID): #1SVDlDTU (Visual_Basic)