vb如何统计Excel指定的列的行数

zgh2017 2017-10-19 10:03:24
vb如何统计Excel指定的某一列的行数,不是整个使用区域行数,是某一个列的使用的行数,因为不同列的使用行数不一样,有没有快速方法,请指教。
...全文
1415 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2017-10-19
  • 打赏
  • 举报
回复
引用 3 楼 Chen8013 的回复:
' M$ Excel / VBA代码:

' 返回工作表 Shee1的A列有多少个“单元格”的值为“数值”:
' 注意:“数值以文本格式表示”的单元格不在统计范围
WorksheetFunction.Count(Sheet1.Range("A:A"))

' 返回工作表 Shee1的A列有多少个“单元格”的值不为空(包括文本、数值)
WorksheetFunction.CountA(Sheet1.Range("A:A"))

舉杯邀明月 2017-10-19
  • 打赏
  • 举报
回复
代码中的“Excel.”可以不写。
舉杯邀明月 2017-10-19
  • 打赏
  • 举报
回复
' M$ Excel / VBA代码:

' 返回工作表 Shee1的A列有多少个“单元格”的值为“数值”:
' 注意:“数值以文本格式表示”的单元格不在统计范围
WorksheetFunction.Count(Sheet1.Range("A:A"))

' 返回工作表 Shee1的A列有多少个“单元格”的值不为空(包括文本、数值)
WorksheetFunction.CountA(Sheet1.Range("A:A"))
zgh2017 2017-10-19
  • 打赏
  • 举报
回复
是的!单元格不能为空值,或空格!
of123 2017-10-19
  • 打赏
  • 举报
回复
使用的行数是什么意思?是指单元格不空?
  岁月如梭,光阴似箭,想不到离上次1.0版推出已有1年多时间^-^。在《源码统计器》推出的这一年内,许多朋友给我来信,指出其中的不足,并有许多很好的建议和鼓励,特别要感谢如下几位:Johnson Jiang、zhangxiao、jp.xie、佟晓艺、徐雷、xwing、司徒达擎、ltzhou、Hunter、birdie。   由于过去的一年多时间内工作很忙,而且我目前从事的已不再是软件开发类的工作,因此一直无暇更新。今年春节假期终于得到几天空闲,能够将自己以往的思路重新整理一下,对《源码统计器》做一些更新工作。由于更新不大,因此只升级为1.1版。 主要更新的地方有: 1、 原版本统计如下代码时出错 /*……*/……/*…… 由于我原先没考虑到同一行内有两个地方注释,并且从该行开始进入注释语句(/*)。还有如下语句也统计错误: /*/ 1 //*/ 可能是对类似于/*/的情况处理不当。如下语句统计也有问题 CString str = "abc\ //de"; 因为未考虑到字符串换行的情况。 另外,1.0版对rc文件统计也不正确。 我对统计算法进行了彻底改写,以上错误均已更正。 2、 增加了"设置"按钮,使用户可以自己设置统计方法。就是当代码和注释语句处于同一行时,作何处理。1.0版本是作为代码行计数,但有网友反映有时需要分开计数。因此新版本增加了这项功能,用户可以根据需要自己设置成: ①只作为代码行处理; ②代码行和注释行各增加一行 ③只作为注释行处理; 按第一种方式和第三种方式统计,代码行+注释行+空白行一定等于总行数,而第二种方式统计代码行+注释行+空白行大于总行数,两者之差就是既有代码又有注释符的行数。《源码统计器》缺省设置为第二种统计方法。 "设置"对话框中用户还可以设置日志文件的路径,这个文件我主要是用来记录统计中可能出现的错误。目前能记录cpp文件中字符串换行但没有用\结尾的问题。 3、 增加了将统计结果保存为Excel文件的功能。 4、 增加了动态图标。 5、 其他还做了一些小改动,不再一一说明。 新软件的界面为: 1.1版的《源码统计器》也如原版本一样,源代码完全开放。若你需要,可来信索取,我的Email是:xiaogi@sohu.com。你也可以到我的个人主页下载:http://xiaogi.nease.net。 软件介绍:   在工作中,我们经常碰到客户要求我们告之所写程序的行数,包括代码行、注释行和空白行等。这一软件就是为这一目的编写的。最先是用于对我自己写的C/C++,VC++程序进行行数统计。它可以准确快速地统计出源代码中的各种行数。后来经过不断改进,增加了对VB, Java, ASP, Perl和Shell等程序的源代码的统计,使得软件的应用范围更加广泛。网络上也有不少类似统计行数的软件,但到目前为止,我发现“源码统计器1.0版”统计速度是最快的,而且相比较发现更加准确,考虑到了源代码中可能出现的许多特殊情况。 软件优点: 1、 准确无误。这当然是任何一款源代码统计工具所必需具备的功能。为此,我自建了一个测试用的cpp文件(test.cpp),在其中我设计了多个遵循c++的注释方式,但又很容易导致统计错误的"陷阱"。虽然有些注释语句看起来有点奇怪,但的确合理并且真实存在。统计该测试文件时即使出现1行的统计误差也是不允许的,否则在统计某个恰好用该种方式注释的程序时误差就可能很大。经测试,“源码统计器1.0版”能准确无误地统计出test.cpp的各种代码行数。 2、 更加快速。由于算法选取和文件处理得当,“源码统计器1.0版”的统计速度相当迅速。 3、 界面友好,易于上手。"源码统计器1.0版"界面说明清楚,相信任何人都能轻松上手。本软件无需安装,解压缩后可直接运行。 4、 功能丰富,智能统计。本软件可以统计多种源码,包括C/C+、VC++、VB、Java、ASP、Perl、Shell和TXT文件。可以将统计结果汇总保存为文本文件或csv文件,其中csv文件可被绝大部分统计软件识别(包括微软Office系Excel),方便今后进一步整理统计源码。“源码统计器1.0版”还可以根据用户输入的文件扩展名自动调用相应的统计方法。 5、 源代码公开,方便用户根据自己的需要进行修改,添加对特殊文件的统计。 添加方法概述如下:假设你要添加对扩展名为"*.my"的文件统计。首先,在CountingDlg.h中定义宏: #define TYPE_MY 18 然后在CCountingDlg::OnInitDialog()中添加该类型到m_structExtention结构体: m_structExtention.arrayTy
1.1版更新介绍   岁月如梭,光阴似箭,想不到离上次1.0版推出已有1年多时间^-^。在《源码统计器》推出的这一年内,许多朋友给我来信,指出其中的不足,并有许多很好的建议和鼓励,特别要感谢如下几位:Johnson Jiang、zhangxiao、jp.xie、佟晓艺、徐雷、xwing、司徒达擎、ltzhou、Hunter、birdie。   由于过去的一年多时间内工作很忙,而且我目前从事的已不再是软件开发类的工作,因此一直无暇更新。今年春节假期终于得到几天空闲,能够将自己以往的思路重新整理一下,对《源码统计器》做一些更新工作。由于更新不大,因此只升级为1.1版。 主要更新的地方有: 1、 原版本统计如下代码时出错 /*……*/……/*…… 由于我原先没考虑到同一行内有两个地方注释,并且从该行开始进入注释语句(/*)。还有如下语句也统计错误: /*/ 1 //*/ 可能是对类似于/*/的情况处理不当。如下语句统计也有问题 CString str = ";;;;;;;abc//de";;;;;;;;;;;;;;; 因为未考虑到字符串换行的情况。 另外,1.0版对rc文件统计也不正确。 我对统计算法进行了彻底改写,以上错误均已更正。 2、 增加了";;;;;;;设置";;;;;;;按钮,使用户可以自己设置统计方法。就是当代码和注释语句处于同一行时,作何处理。1.0版本是作为代码行计数,但有网友反映有时需要分开计数。因此新版本增加了这项功能,用户可以根据需要自己设置成: ①只作为代码行处理; ②代码行和注释行各增加一行 ③只作为注释行处理; 按第一种方式和第三种方式统计,代码行+注释行+空白行一定等于总行数,而第二种方式统计代码行+注释行+空白行大于总行数,两者之差就是既有代码又有注释符的行数。《源码统计器》缺省设置为第二种统计方法。 ";;;;;;;设置";;;;;;;对话框中用户还可以设置日志文件的路径,这个文件我主要是用来记录统计中可能出现的错误。目前能记录cpp文件中字符串换行但没有用结尾的问题。 3、 增加了将统计结果保存为Excel文件的功能。 4、 增加了动态图标。 5、 其他还做了一些小改动,不再一一说明。 1.1版的《源码统计器》也如原版本一样,源代码完全开放。若你需要,可来信索取,我的Email是:xiaogi@sohu.com。你也可以到我的个人主页下载:http://xiaogi.nease.net。 软件介绍:   在工作中,我们经常碰到客户要求我们告之所写程序的行数,包括代码行、注释行和空白行等。这一软件就是为这一目的编写的。最先是用于对我自己写的C/C++,VC++程序进行行数统计。它可以准确快速地统计出源代码中的各种行数。后来经过不断改进,增加了对VB, Java, ASP,JSP和SQL等程序的源代码的统计,使得软件的应用范围更加广泛。网络上也有不少类似统计行数的软件,但到目前为止,我发现“源码统计器1.1版”统计速度是最快的,而且相比较发现更加准确,考虑到了源代码中可能出现的许多特殊情况。 软件优点: 1、 准确无误。这当然是任何一款源代码统计工具所必需具备的功能。为此,我自建了一个测试用的cpp文件(test.cpp),在其中我设计了多个遵循c++的注释方式,但又很容易导致统计错误的";;;;;;;陷阱";;;;;;;。虽然有些注释语句看起来有点奇怪,但的确合理并且真实存在。统计该测试文件时即使出现1行的统计误差也是不允许的,否则在统计某个恰好用该种方式注释的程序时误差就可能很大。经测试,“源码统计器1.1版”能准确无误地统计出test.cpp的各种代码行数。 2、 更加快速。由于算法选取和文件处理得当,“源码统计器1.1版”的统计速度相当迅速。 3、 界面友好,易于上手。";;;;;;;源码统计器1.1版";;;;;;;界面说明清楚,相信任何人都能轻松上手。本软件无需安装,解压缩后可直接运行。 4、 功能丰富,智能统计。本软件可以统计多种源码,包括C/C+、VC++、VB、Java、ASP、JSP、SQL和TXT文件。可以将统计结果汇总保存为文本文件或csv文件,其中csv文件可被绝大部分统计软件识别(包括微软Office系Excel),方便今后进一步整理统计源码。“源码统计器1.1版”还可以根据用户输入的文件扩展名自动调用相应的统计方法。 5、 源代码公开,方便用户根据自己的需要进行修改,添加对特殊文件的统计。 添加方法概述如下:假设你要添加对扩展名为";;;;;;;*.my";;;;;;;的文件统计。首先,在CountingDlg.h中定义宏: #define TYPE_MY 16 然后在CCountingDlg::OnInitDialog()中添加该类型到m_structExtention结构体: m_structExtention.arrayType.Add(";;;;;;;my";;;;;;;);;;;;;;; m_structExtention.nType[0] = TYPE_MY;;;;;;;; 再在IsSearchingFor(CString strFileName)中添加判断,使得当strFileName为my类型时返回TRUE。 在类CCountingDlg中添加函数GetMyFileLines(),具体统计算法请在该函数内自己实现。 最后在CountThread线程中加入判断,如果文件类型为TYPE_MY,则调用函数GetMyFileLines ( )进行统计。 具体操作可参考源代码相应的处理。 6、 软件所使用的资源绝大部分位于资源文件中,便于用户更改其语言版本以用在其它语言的操作系统上。(这也是本软件下一版本要追加的一个功能:自动识别操作系统语言并载入相应的资源包) 使用方法: ◆ 在“文件名或文件类型”组合框中输入你需要进行统计的文件类型(如:*.cpp;;;;;;;;*.c;;;;;;;;*.h)。扩展名之间用;;;;;;;;,:分隔,;;;;;;;;,:前后有空格亦无妨,软件会自动忽略。你也可以直接输入需要统计的文件名(如:counting.cpp;;;;;;;; setting.c;;;;;;;; resource.h)。同样的,文件名之间也用;;;;;;;;,:分隔。点击下拉框可以选择软件缺省为你提供的几种文件类型,点击右边的按钮可以手动指定需要进行统计的文件(可多选,并且软件自动将选中文件的所在目录放入";;;;;;;搜索文件夹";;;;;;;组合框中)。 ◆ 在“搜索文件夹”组合框中输入你需要进行统计的文件所在的文件夹(如: d:study),点击下拉框可以选择近几次进行统计的文件夹。如果你手动输入的文件夹不在下拉框中,软件在统计开始后自动将该文件夹加入。点击右边的按钮可以选择文件夹。 ◆ 你可以选择统计时是否也需要统计子文件夹中的相关文件。 ◆ 点击";;;;;;;统计";;;;;;;按钮开始,再次点击该按钮停止统计。 ◆ 若你需要保存统计结果,请点击";;;;;;;保存";;;;;;;按钮。你可以选择以文本文件、Excel文件或csv文件三种格式保存。其中csv文件可被几乎所有的统计软件识别,包括微软Office系Excel。 ◆ 在表控件中双击文件名可打开该文件。 ◆ 软件可稳定地运行于MS Windows系操作系统上。 作者声明:   本软件为自由软件,源代码完全公开。你可以来信索要并不受限制地利用,但务请保留作者的版权信息。若你觉得本软件对你有帮助或你需要将其中部分的代码用到自己的软件中,请给作者来信告知。如果你对本软件有好的建议或bug发现,也请来信告知。本软件将不断更新升级,最新版本请到我的个人主页下载。 我的Email:xiaogi@sohu.com 个人主页:http://xiaogi.nease.net
目录: 1.返回 Column 英文字 2.查询某一值第num次出现的值 3.返回当个人工资薪金所得为2000元(起征点为850元)时的应纳个人所得税税额 4.从形如"123545ABCDE"的字符串中取出数字 5.从形如"ABCD12455EDF"的字符串中取出数字 6.按SplitType取得RangeName串值中的起始位置 7.将金额数字转成中文大写 8.计算某种税金 9.人民币大、小写转换 10.查汉字区位码 11.把公元年转为农历 12.返回指定数的标 13.用指定字符替换某字符 14.从右边开始查找指定字符在字符串中的位置 15.从右边开始查找指定字符在字符串中的位置 16.计算工龄 17.计算日期差,除去星期六、星期日 18.将英文字反转的自定函数 19.计算个人所得税 20.一个能计算是否有重复单元的函数 21.数字金额转中文大写 22.将数字转成英文 23.人民币大小写转换 24.获取区域颜色值 25.获取活动工作表名 26.获取最后一行行数 27.判断是否连接在线 28.币种转换 29.检验工作表是否有可打印内容 30.查找一字符串(withinstr)在另一字符串中(findstr1)中某一次(startnum)出现时的位置,返回零表示没找到。 31.增加文件路径最后的“\”符号 32.计算所得税 33.从工作表第一行的标题文字以数字形式返回所在号 34.在多个工作表中查找一个范围内符合某个指定条件的项目对应指定范围加总求和 35.返回 Column 英文字 36.查找指定名的数 37.文字格式的时间(分:秒)转化为数字格式(秒) 38.将"hh:mm:ss"格式的时分秒数转换成秒数 39.金额中文大写转数字 40.把角度转为度秒分、弧度等显示 41.身份证号码侦测 42.显示公式 43.方便财务人员理帐查找 44.数值转换为字符地址 45.字符地址转换为数值 46.等待时间(以秒计算) 47.得到字符串实际的长度(以单字节记) 48.18位身份证最后一位有效性验证 49.计算符合maturity condition的拆解金额 50.对多个用同一分隔符分隔的待查找元素,逐一在表区域首内搜索,将返回选定单元格的值相加,相当于多个vlookup函数相加,对于查找不到的元素在批注中添加,以提醒用户。 51.根据个人所得税(工资)反算工资数 52.判断表是否存在 53.角度转弧 54.比较相同的字符串 55.对选定的数组进行排序 56.取得指定月份天数 57.排序工作表活页薄 58.统计数组中非重复数据个数 59.摘取子字符串 60.计算20000余个汉字的笔画 61.删除当前工作表中的全部超连接 62.取得相近数据 63.提取定串中汉字 64.搜索重复数据(选定范围) 65.字符型转数字型 66.小写人民币转大写人民币 67.取得指定月份人星期天个数 68.侦测档案是否包含宏 69.获取循环参照单元格 70.创建桌面快捷方式 71.自动建立多级目录 72.统计经筛选后符合条件的记录条数 73.复制单元格高与栏宽 74.取消隐藏工作表(包括vba Project工程保护的) 75.删除单元格自定义名称 76.从文件路径中取得文件名 77.取得一个文件的扩展名 78.取得一个文件的路径 79.十进制转二进制 80.检查一个数组是否为空 81.字母栏名转数字栏名 82.数字栏名转文字栏名 83.判断一件活页夹中是否还有子目录 84.判断一个文件是否在使用中 85.出档案详细摘要信息 86.获取菜单ID编号及名称表 87.状态动态显示文字 88.取得一个文件的路径2 89.取得一个文件的路径3 90.取得Activecell的栏名 91.取得单元格中指定字符前的字符 92.前单元格指定字符前的字符颜色改成红色 93.根据数字返回对应的字母号 94.取工作表名字 95.取消所有隐藏的宏表 96.导出VBA Project代码 97.导入VBA Project代码 98.取得汉字拼音的第一个字母 99.获取两栏中相同的数据 100.选取当前工作表中公式出错的单元格﹐关返回出错个数 101.将工作表中最后一作为页脚打印在每一面页尾 102.获取vbproject引用项目 103.移除Excel工作表中的外部数据连接 104.将选择定单元格作成镜像图片 105.反选择单元格中的数 106.在Excel中加入一个量度尺(以厘米为单位) 107.在Excel中加入一个量度尺(以寸为单位) 108.取得一个短文件名的长文件名 109.取得临时文件名 110.等用Shell调用的程序执行完成后再执行其它程序 111.将Mouse显示成动画 112.限制Mouse移动范围 113.取得当前激活窗品句柄及标题 114.取得屏幕分辨率 115.自动建立多级目录 116.将文件长度置零 117.读取WIN9X / Me共享文件夹密码 118.取得预设的打印机及设置预设的打印机 119.获得当前操作系统的打印机个数及检测打印是否存在 120.枚举打印机名称清单 121.读取网络服务器当前时间 122.下载文件到指定目录 123.自动映射网络驱动器 124.自动断开网络驱动器 125.连接选定单元格中的内容 126.获取一个单元格中有指定字体颜色部份数据 127.对指定文件加XLS加密 128.选择指定范围内使用了填充颜色的单元格 129.在特定的区域内查找文本,返回值是包含查找文本的单元格 130.返回特定区域中最大值的地址 131.删除表格中使用范围内的所有空白单元格 132.返回数组中有多少个指定的字符串 133.返回当前工作表中引用了指定的单元的地址 134.获取Excel中字型表 135.获取一个字符串中有多少个数字字符 136.在Excel中对多进行填充 137.对选定的范围进行数据填充(忽略单元格格式) 138.VBA Project加密及解密 139.出收藏夹中的网址 140.计算两个日期之间相隔的年份,比如年龄,工龄等.可计算从1000年01月01日起的日期 141.从字符串提取纯数字 142.将一个数组按升序排 143.将一个数组按降序排 144.删除空白 145.判断工作表是否为空白 146.将数据按类分到不同工作薄 147.单元格内数据排序 148.对多栏排序 149.返回计算公式的值 [,值的计算公式] 150.把第一=某个值对应的第二的内容连在一起,并用、隔开 151.取得系统使用模式 152.计算机注销/关机/重启 153.更改计算机名称 154.从n位开始取出字符串中的汉字、英文字母、数字 155.在指定中寻找含有指定字符串的单元格,并将符合条件的单元格标为红色,并将对应的下一单元格赋值为1 156.清除字符串中的空格 157.查找合并单元格位置 158.阴阳历转换和阴阳历生日 159.利用数组和Substitute来替换某字符 160.一键创建斜线表头 161.自动获取指定月的工作日

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧