ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1133|回复: 6

[求助] 这几句代码错在哪?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-10-4 14:25 | 显示全部楼层 |阅读模式
sub 查找已经打开的工作簿名()
dim wbk as workbook, wba as workbook, zc as string
For Each wbk In Workbooks
    If wbk.Name <> "定额" Then '除了这张工作簿名之外
    zc = wbk.Name
    zc = Split(zc, ".")(0)
        Set wba = Workbooks(zc) '这地方赋值之后没有变化,可以运行
        wba.activate '不能激活工作簿
next
end sub
有时能运行,有时候就不可以,包括其它宏也经常这样

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-4 14:27 | 显示全部楼层
帮忙高手们

TA的精华主题

TA的得分主题

发表于 2019-10-4 15:14 | 显示全部楼层
楼主以上代码运行测试了吗,不报错的吗?
If wbk.Name <> "定额" Then
这个地方不需要扩展名吗?
包括后面的,建议楼主考虑下扩展名
后面的激活工作薄是否步骤冗余太多了

建议楼主先保证代码不报错吧

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2019-10-4 15:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
不知道原码意欲何为,修改看看你要干嘛
  1. Sub 查找已经打开的工作簿名()
  2.     Dim wbk As Workbook, wba As Workbook, zc As String
  3.     For Each wbk In Workbooks
  4.         If Not wbk.Name Like "定额.*" Then '除了这张工作簿名之外
  5.             wbk.Activate
  6.         End If
  7.     Next
  8. End Sub
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-4 15:35 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
liulang0808 发表于 2019-10-4 15:14
楼主以上代码运行测试了吗,不报错的吗?
If wbk.Name  "定额" Then
这个地方不需要扩展名吗?

代码可以运行,有时可以激活,有时就不能了;其它宏有时好好的,过几天中间的一些代码又不执行,但可以看到运行到不执行代码之处

TA的精华主题

TA的得分主题

发表于 2019-10-4 15:54 | 显示全部楼层
1635967374 发表于 2019-10-4 15:35
代码可以运行,有时可以激活,有时就不能了;其它宏有时好好的,过几天中间的一些代码又不执行,但可以看 ...

楼主的代码真能运行?
if 语句 then 后面没有代码,
后面也没有end if

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-4 16:40 | 显示全部楼层
liulang0808 发表于 2019-10-4 15:54
楼主的代码真能运行?
if 语句 then 后面没有代码,
后面也没有end if

上面少写了,不好意思,修复了Excel,然后将你所说的后缀全加上了。但是用Set wba = Workbooks(zc),这句这样设的是没有用处,因为打开的文件变成WINDOWN(ZC),对后面的操作,只能用activate或select;不知道Set wba = Workbooks.WINDOWN(ZC)    这样不知道行不行?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-27 05:49 , Processed in 0.037628 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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