Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2353|回复: 4

[已解决]这段代码出错的原因是什么

[复制链接]
发表于 2015-4-28 09:28 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2015-4-28 09:46 编辑

Sub text1()
  Dim wb As Workbooks
  wb = ThisWorkbook
  wb.Sheets(1).Range("A1") = 200
End Sub
最佳答案
2015-4-28 09:36
错误1:thisworkbook是 Workbook 对象,不是Workbooks 对象
错误2:将对象引用赋给变量或属性时,要用Set 语句。



Sub text1()
  Dim wb As Workbook
  Set wb = ThisWorkbook
  wb.Sheets(1).Range("A1") = 200
End Sub

捕获.JPG
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-4-28 09:35 | 显示全部楼层
本帖最后由 Excel学徒123 于 2015-4-28 09:42 编辑

Sub text1()
  Dim wb As Workbook
  set wb = ActiveWorkbook
  wb.Sheets(1).Range("A1") = 200
End Sub

点评

set之后wb后边只能跟属性或者方法,不能直接对象吧  发表于 2015-4-28 09:39
回复

使用道具 举报

发表于 2015-4-28 09:36 | 显示全部楼层
Sub text1()
  Dim wb As Workbooks
  ThisWorkbook.Sheets(1).Range("A1") = 200
End Sub

直接这样就行了.

点评

既然用ThisWorkbook,那何必要Dim wb As Workbooks~  发表于 2015-4-28 09:44
回复

使用道具 举报

发表于 2015-4-28 09:36 | 显示全部楼层    本楼为最佳答案   
错误1:thisworkbook是 Workbook 对象,不是Workbooks 对象
错误2:将对象引用赋给变量或属性时,要用Set 语句。



Sub text1()
  Dim wb As Workbook
  Set wb = ThisWorkbook
  wb.Sheets(1).Range("A1") = 200
End Sub

回复

使用道具 举报

发表于 2015-4-28 09:43 | 显示全部楼层
橘子红 发表于 2015-4-28 09:36
Sub text1()
  Dim wb As Workbooks
  ThisWorkbook.Sheets(1).Range("A1") = 200

对象啊,二橘子
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-25 11:54 , Processed in 0.255668 second(s), 16 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表