ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 兰色幻想

带你入门VBA系列之:不懂的代码快点贴过来

[复制链接]
头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2006-6-13 17:30 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
提示: 作者被禁止或删除 内容自动屏蔽

TA的精华主题

TA的得分主题

发表于 2006-6-13 17:55 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

老师,可以将下面的代码给我讲解一下吗???? 先谢了 Private Sub Workbook_Open() On Error Resume Next '如果出错则执行下一行代码(因为如果不存在名称为MyMenu的命令栏时会产生一个错误,用此忽略它) Dim cmdBar As CommandBar Dim BarCtlBtn As CommandBarButton Application.CommandBars("MyMenu").Delete '如果已存在命令栏则删除它 With Application.CommandBars.Add("MyMenu", msoBarTop, True, False) '新建一个命令栏并以新命令栏替换活动菜单栏 Set BarCtlBtn = .Controls.Add(Type:=msoControlButton, Before:=1, Temporary:=True) '在新命令栏中第一个按钮前添加一个命令按钮 With BarCtlBtn '设置命令按钮 .Style = msoButtonCaption '设置命令按钮风格 .Caption = "[凭证查询]" '设置命令按钮标题 .OnAction = "FindPZ_Click" '设置命令按钮单击时运行的过程名称 End With Set BarCtlBtn = .Controls.Add(Type:=msoControlButton, Before:=1, Temporary:=True) '在新命令栏中第一个按钮前添加一个命令按钮 With BarCtlBtn .Style = msoButtonCaption .Caption = "[凭证新增]" .OnAction = "CreatePZ_Click" End With .Visible = True '设置命令栏可视 End With End Sub '其它具体的参数与常量可查看帮助

[此贴子已经被清风_ll于2006-6-14 12:34:45编辑过]

TA的精华主题

TA的得分主题

发表于 2006-6-13 18:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

请教老师,下列代码的含义是什么

Sub result(ByVal index As Integer)
Dim i As Integer
For i = 1 To 10
If Not i Like "[4-6]" Then Cells(index, i) = Cells(index, i + 35)'这条语句的具体含义是什么
Next
End Sub

主要是对like运算符的理解,查一下帮助吧. 该句代码的意思为:如果i不在4-6之间则执行后面的代码
[此贴子已经被清风_ll于2006-6-14 11:49:20编辑过]

TA的精华主题

TA的得分主题

发表于 2006-6-14 10:09 | 显示全部楼层

老师我再贴一个,是否符合主题:

这是模糊查询全表的作者写的代码.不是盗版,主要拿来学习.谢谢了.

Sub rrrrr()
t = Now
Application.ScreenUpdating = 0 '闪屏关
Range("c2:e65536").ClearContents
On Error Resume Next
For Each ch In Sheets
a = [c65536].End(xlUp).Row + 1
If UCase(ch.Name) = "SHEET1" Then GoTo 1
r = Sheets(ch.Name).Cells.Find(what:=[b2]).Address
fr = r
Cells(a, 3) = ch.Name
Cells(a, 4) = r
Cells(a, 5) = Sheets(ch.Name).Range(r)
2: r = Sheets(ch.Name).Cells.FindNext(after:=Sheets(ch.Name).Range(r)).Address
If r = fr Then GoTo 1
a = [c65536].End(xlUp).Row + 1
Cells(a, 3) = ch.Name
Cells(a, 4) = r
Cells(a, 5) = Sheets(ch.Name).Range(r)
GoTo 2
1: Next
Application.ScreenUpdating = 1 '闪屏开
MsgBox (Now - t) * 24 * 3600 & "秒"

TA的精华主题

TA的得分主题

发表于 2006-6-14 10:16 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2006-6-14 18:06 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2006-6-14 21:04 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2006-6-14 22:08 | 显示全部楼层
VBA是个好东西,可惜不懂ABC(对于现代的人来说我们就象史前恐龙),想学会有许多不便,不知有没有代码、函数、公式的名词解释介绍一下。

TA的精华主题

TA的得分主题

发表于 2006-6-15 15:41 | 显示全部楼层
多条件加总函数代码

10 Function SumIfAllSheets(rang As Range, Criteria As Variant, sum_range As Range)
20 Dim wSheet As Worksheet
30 Dim vSum
40 On Error Resume Next
50 For Each wSheet In ActiveWorkbook.Worksheets
60 With wSheet
70 Set rang = .Range(rang.Address)
‘设置变量等于当前工作表的第一个参数给定的单元格区域 80 Set sum_range = .Range(sum_range.Address)
‘设置变量等于当前工作表的第三个参数给定的单元格区域 90 vSum = vSum + WorksheetFunction.SumIf _ ‘ 程序用下划线和空格转行
100 (rang, Criteria, sum_range)
’90和100为一句,意思是利用SUMIF函数进行有条件求和后再累加 110 End With
120 Next wSheet
130 Set rang = Nothing
140 Set sum_range = Nothing
150 SumIfAllSheets = vSum
160 End Function

哪位能解释下70-110行的作用,让我们这些后辈学习学习?
[此贴子已经被兰色幻想于2006-6-16 8:28:09编辑过]

TA的精华主题

TA的得分主题

发表于 2006-6-16 09:39 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-19 20:44 , Processed in 0.037378 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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