Excel精英培训网

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

[已解决]请教一个VBA代码,谢谢!

[复制链接]
发表于 2015-9-8 08:29 | 显示全部楼层 |阅读模式
本帖最后由 lsy1133 于 2015-9-8 10:34 编辑

For Each sha In Worksheets
    SHh = Sheets("A1").UsedRange.Find(sha.Name,lookat:=xlWhole).Row
    sha.Name = Sheets("A1").Range("B" & SHh)
Next
以上代码运行到SHh =Sheets("A1").UsedRange.Find(sha.Name, lookat:=xlWhole).Row这句时总显示
“运行错误91
        对象变量或With块变量未设置”

是什么原因?
是否Find(sha.Name,lookat:=xlWhole)中sha.Name不是字符串,如何转换为字符串?

最佳答案
2015-9-8 11:29
  加上下面红色部分就没问题了。

  For Each sha In Worksheets
     If ActiveSheet.Name <> sha.Name Then sha.Name = Sheets("A1").UsedRange.Find(sha.Name, , , xlWhole).Offset(0, 1).Value
    Next

提取工作表(已实现提取、改名、加首页表).rar

19.84 KB, 下载次数: 7

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-9-8 08:36 | 显示全部楼层
sha.name是字符串,至于出现问题的原因我还看不出来,如果你能上附件最好
回复

使用道具 举报

发表于 2015-9-8 08:51 | 显示全部楼层
查找不到该单元格会出现这类提示,如果能查到则无
回复

使用道具 举报

发表于 2015-9-8 10:16 | 显示全部楼层
本帖最后由 suye1010 于 2015-9-8 11:20 编辑

SHh = Sheets("A1").UsedRange.Find(sha.Name,lookat:=xlWhole).Row这句改为
改为SHh = Sheets("A1").UsedRange.Find(sha.Name,,,xlWhole).Row

这个语句也可以简化成

For Each sha In Worksheets
   sha.Name = Sheets("A1").UsedRange.Find(sha.Name,,,xlWhole).offset(0,1).value
Next
更多内容,请参看以下Find方法的帮助信息:
https://msdn.microsoft.com/EN-US/library/ff839746.aspx
回复

使用道具 举报

 楼主| 发表于 2015-9-8 10:35 | 显示全部楼层
suye1010 发表于 2015-9-8 10:16
SHh = Sheets("A1").UsedRange.Find(sha.Name,lookat:=xlWhole).Row这句改为
改为SHh = Sheets("A1").Used ...

这么改还是有这个提示,不知是什么原因。
回复

使用道具 举报

发表于 2015-9-8 11:21 | 显示全部楼层
lsy1133 发表于 2015-9-8 10:35
这么改还是有这个提示,不知是什么原因。

你确定你有个 名称为 A1 的工作表吗?
回复

使用道具 举报

发表于 2015-9-8 11:25 | 显示全部楼层
提示了“请重新发帖”,移入回收后的帖最好重发新帖,这次算了。

如果不是恰巧看到,版主是不知道你又上传了附件的。

回复

使用道具 举报

 楼主| 发表于 2015-9-8 11:28 | 显示全部楼层
suye1010 发表于 2015-9-8 11:21
你确定你有个 名称为 A1 的工作表吗?

有的,上传附件了


回复

使用道具 举报

发表于 2015-9-8 11:29 | 显示全部楼层    本楼为最佳答案   
  加上下面红色部分就没问题了。

  For Each sha In Worksheets
     If ActiveSheet.Name <> sha.Name Then sha.Name = Sheets("A1").UsedRange.Find(sha.Name, , , xlWhole).Offset(0, 1).Value
    Next

回复

使用道具 举报

 楼主| 发表于 2015-9-8 11:29 | 显示全部楼层
yorkchenshunan 发表于 2015-9-8 08:36
sha.name是字符串,至于出现问题的原因我还看不出来,如果你能上附件最好

已上传附件了,请帮我看下,谢谢!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-21 03:45 , Processed in 0.364345 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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