找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: lt_zzy

[教学]:EXCEL VBA 入门

[复制链接]
 楼主| 发表于 2005-4-12 18:47:30 | 显示全部楼层
其实上面的这一段代码,用一行就可以达到同样的效果。

这两句合为一句应行了


Range("A1:A22").ClearContents


在程序中要尽量少用SELECT,这样会影响速度,程序大的时候也很不方便,(录制的宏常带SELECT)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-12 18:50:05 | 显示全部楼层
问题与答案:

请问Columns是什么意思,也是一种表示法吗?


COLUMN是指列,COLUMNS是指列的集合

ROW是表示行,ROWS是行的集合

如果用Sheets("sheet1").columns.select   会选定所有列即整个工作表
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-12 18:52:33 | 显示全部楼层
问题提出:


即然能求出A列存放数据的行数了,那么如何让程序自动在最好一行填入求得的和呢?

原来是直接range("a21")=...现在要求不能这样做,要自动识别最后一行然后在这一行填入求和结果。

先想一想明天公布答案
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-13 13:40:20 | 显示全部楼层
答案:



如果只是求前20行的和放在最后一行:



Sub 矩形1_单击()
Dim i As Integer
Dim YYY As Integer
For i = 1 To 20
Sheets("sheet1").Cells(i, 1) = i
Next
YYY = Application.WorksheetFunction.CountA(Columns("A"))
Cells(YYY + 1, 1) = Application.WorksheetFunction.Sum(Range("A1:A20"))
End Sub



如果是对A列所有的都求和:



Sub 矩形2_单击()
Dim i As Integer
Dim YYY As Integer
For i = 1 To 20
Sheets("sheet1").Cells(i, 1) = i
Next
YYY = Application.WorksheetFunction.CountA(Columns("A"))
Cells(YYY + 1, 1) = Application.WorksheetFunction.Sum(Range(Cells(1, 1), Cells(YYY, 1)))
End Sub




    在本例中是增加了个整数变量YYY,为什么要命名它为整数,是因为单元格个数是以整数表示的,没有听说过第1.2个单元格吧



把A列的非空单元格个数赋给YYY,然后在后面的程序就是以调用它了



Sum(Range(Cells(1, 1), Cells(YYY, 1))) 是变动的单元格求和



RANGE(CELLS(),CELLS())是表示一个区域



比如Range(cells(1,1),cells(20,1))和Range("a1:a20")是一样的,为什么要这样表示是因为CELLS表示单元格时可以加入变量
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-16 09:01:44 | 显示全部楼层
斑竹,请问怎样求A列大于0的最小值?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-19 16:30:41 | 显示全部楼层
Sub 矩形1_单击()
k = Application.WorksheetFunction.Max(Range("a:a"))
For i = 2 To Range("a65536").End(xlUp).Row
If Cells(i, 1) < k And Cells(i, 1) > 0 Then
k = Cells(i, 1)
End If
Next
Cells(1, 2) = k
End Sub
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-20 09:14:11 | 显示全部楼层
谢谢azxq,顺便问一下End(xlUp).Row是什么意思。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-20 20:30:33 | 显示全部楼层
列中最后一个有数据的单元格的行号
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-24 08:56:56 | 显示全部楼层
请问Columns是什么意思,也是一种表示法吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-24 14:29:25 | 显示全部楼层
表示列的集合。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-4-30 19:35:41 | 显示全部楼层
回去按楼主的说法用了一下,确实挺好用的!!
有没有进阶的或者一些实例!谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-2 10:08:48 | 显示全部楼层
请问斑竹,到前面提到的变量类型能用简写么?比如INTEGER写成INT
     这个编程是不是用FORTRAN语言?用C可以么?
还有可以直接调用的函数在哪里看?我怎么找不到编辑器?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-2 11:59:48 | 显示全部楼层
不能简写
vba是vb的子集,内嵌到excel的。
工具---宏----visual basic 编辑器 打开,或直接按alt+f11
编辑器中可以通过“对象浏览器”察看函数
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-6 14:05:15 | 显示全部楼层
谢谢!dddd
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-5-7 19:44:39 | 显示全部楼层
看不懂
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-16 17:38 , Processed in 0.445884 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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