ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

菜鸟谈VBA最最基础入门《原创》

    [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-9-9 22:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖已被收录到知识树中,索引项:开发帮助和教程
谢谢楼主分享。

TA的精华主题

TA的得分主题

发表于 2009-9-9 22:14 | 显示全部楼层
谢谢楼主分享啊。

TA的精华主题

TA的得分主题

发表于 2009-9-9 23:55 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-9-10 08:52 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-9-10 09:54 | 显示全部楼层

楼主帮我看下这段代码对不对哦,

Private Sub TextBox2_Change()
Dim i As Long
Dim j As Long
For i = 2 To 100 Step 1
    For j = 2 To 100 Step 1
     If Cells(i, j).Value <> "" And Cells(i + 1, j).Value = "" Then
     Cells(i + 1, j).Value = Cells(i, j).Value
     End If
    Next j
Next i
     
     
End Sub
实现目标,将上一行非空的值赋给下一行空的值

TA的精华主题

TA的得分主题

发表于 2009-9-10 10:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
谢谢分享,收下慢慢学习

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-9-10 13:38 | 显示全部楼层

回复 421楼 zznjcs 的帖子

RANGE() 的形式我第一次见到,不大理解.--------------要表示A1:B10单元格用range形式是:range("a1:b10"),中间的参数是一个字符串。对它的理解我感觉有点像工作表函数里的indirect。

Range("B3:C" & row1)是不是说范围在从B3到C列,行数是从3到row1------row1在上文被定义为long变量,且已赋值,比如row1=100则:"B3:C" & row1="B3:C100",即:range("B3:B100"),表示B3:B100单元格区域。

如果是B3 到B列第row1行,是不是可以写成Range("B3" & row1), ----------比如row1=100,那B3到B列的第一百行常规的表示方法为:B3:B100,所以用range的形式也是这样,所以应该表示为:range("B3:B" & row1)

如果有几个区域,如B3:C4, E5:F6, 怎么样把它们表示在一个RANGE()里面 -------------感觉要用union,union(range("b3:c4"),range("e5;f6"))     424楼的朋友说的Range("B3:C4" ,"E5:F6"),就该表示的是range("b3:f6"),不是两个区域。

什么时候用&符号? --------------&是文本连接版本号,跟工作表里的一样,当你需要连接两个字符串为一个字符地就会用到它。

[ 本帖最后由 ggsmart 于 2009-9-10 13:40 编辑 ]

评分

2

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-9-10 13:53 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 SJTUBOB 于 2009-9-9 20:00 发表
这么改的理由是什么呢。。感觉和螳螂的代码是一个道理啊,为什么结果就不同啊。。纠结啊。。。



感觉好像螳螂兄的那个里面不是字符串的缘故吧,range的括号里是用字符串或字符串的变量。

[ 本帖最后由 ggsmart 于 2009-9-10 14:30 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-9-10 14:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 zznjcs 于 2009-9-9 21:51 发表
581410
终于完成了作业, 不容易呀.

不过我还有个问题: 楼主加上的计时器是如何工作的?


是的,是利用结束时间减开始时间计算出来的程序执行时间。用了timer函数。
关于它的具体意思,在代码窗口里将其抹黑,按F1即可查看相应的帮助。

[ 本帖最后由 ggsmart 于 2009-9-10 14:29 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-9-10 14:19 | 显示全部楼层
原帖由 huguyue619 于 2009-9-10 09:54 发表
Private Sub TextBox2_Change()
Dim i As Long
Dim j As Long
For i = 2 To 100 Step 1
    For j = 2 To 100 Step 1
     If Cells(i, j).Value  "" And Cells(i + 1, j).Value = "" Then
     Cells(i + 1,  ...


貌似感觉没有什么问题。。。呵呵。。。。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-23 09:56 , Processed in 0.040832 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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