VBA获取区域的起始行、结束行
用到的属性
Range.MergeArea,返回 Range 对象,代表包含指定单元格的合并的范围。如果指定的单元格不在合并的范围内,则该属性返回指定的单元格。只读。Variant类型。
Range.Address,以宏语言返回区域引用。String 类型,只读。如::$A$3:$A$10
o_xls.Visible = TRUE
o_xls.WindowState = -4140 //最小化o_WorkBook = o_xls.Workbooks.Open(ls_FileName)o_sheet = o_WorkBook.Sheets(4) //应付账款表ll_RowCount = o_sheet.UsedRange.Rows.Count//ls_Msg = ""
//ls_dyg = "A3"
//
//o_Range = o_sheet.Range(ls_dyg).MergeArea
//
//ls_AddRess = o_Range.Address //返回区域的范围:$A$3:$A$10
//
//wf_Get_Range_AddRess(ls_AddRess,ll_StartRow,ll_EndRow) //解析起始行号、结束行号的字符串
//
获取起始行
//ls_Msg = ls_Msg + "起始行:" + String(ll_StartRow) + " ; "
//
//ls_Msg = ls_Msg + "结束行:" + String(ll_EndRow) + "~r~n"
////IF o_sheet.Range("A3").MergeCells = TRUE THEN
// MessageBox("A3","合并单据元格")
//ELSE
// MessageBox("A3","不是")
//END IFFOR ll_Row = 3 TO ll_RowCountls_dyg = "A" + String(ll_Row)IF o_sheet.Range(ls_dyg).MergeCells = TRUE THENls_AddRess = o_Sheet.Range(ls_dyg).MergeArea.Address //获取合并单元格的范围,$A$3:$A$10wf_Get_Range_AddRess(ls_AddRess,ll_StartRow,ll_EndRow) //解析地址范围,获取起始行号、结束行号ls_gznr = o_Sheet.Range(ls_dyg).Valuels_Msg = ls_Msg + "合并单元格【" + ls_dyg + " : " + ls_AddRess + "】:" + "起始行:" + String(ll_StartRow) + " ; 结束行:" + String(ll_EndRow) + " ; 挂账内容:" + ls_gznr + "~r~n" ll_Row = ll_EndRow ELSE//非合并单元格ls_gznr = o_Sheet.Range(ls_dyg).Valuels_Msg = ls_Msg + "非合并单元格【" + ls_dyg + "】:"ls_Msg = ls_Msg + "行:" + String(ll_Row) + " ; 挂账内容:" + ls_gznr + "~r~n"END IF
NEXT//关闭
o_WorkBook.Close(FALSE)
o_xls.WorkBooks.close()
o_xls.quitdestroy o_sheet
destroy o_workbook
destroy o_xlsfu_error(ls_Msg)MessageBox("提示","测试结束")
解析区域范围字符串的函数
/*====================================================================
> Function: w_pzdr_yfzk.wf_get_range_address
>--------------------------------------------------------------------
> 描述: 获取区域的起始行和结束行,解析字符串:$A$3:$A$10
>--------------------------------------------------------------------
> 参数: String ls_AddRess 区域范围的字符串,$A$3:$A$10
> ref long ll_startrow 引用方式,起始行号
> ref long ll_endrow 引用方式,结束行号
>--------------------------------------------------------------------
> 返回: (none)
>
====================================================================*/long ll_IndexStart,ll_IndexEnd,ll_Len
String ls_StartRow,ls_EndRow//第一个$的位置
ll_IndexStart = Pos( ls_AddRess,"$")
//第二个$的位置
ll_IndexStart = Pos( ls_AddRess,"$" , ll_IndexStart + 1 )
//":"的位置
ll_IndexEnd = Pos ( ls_AddRess,":", ll_IndexStart + 1 )
//起始行
ll_Len = ll_IndexEnd - ll_IndexStart - 1
ls_StartRow = Mid(ls_AddRess,ll_IndexStart + 1 ,ll_Len)//第三个$的位置
ll_IndexStart = Pos ( ls_AddRess,"$",ll_IndexStart + 1 )
//第四个$的位置
ll_IndexStart = Pos ( ls_AddRess,"$",ll_IndexStart + 1 )
//结束行
ls_EndRow = Mid(ls_AddRess,ll_IndexStart + 1 )//fu_error("【wf_Get_Range_AddRess : " + ls_AddRess + "】起始行号:" + ls_StartRow + " ; 结束行号:" + ls_EndRow )ll_StartRow = long(ls_StartRow)
ll_EndRow = long(ls_EndRow)
VBA获取区域的起始行、结束行相关推荐
- excel vba区域求和 获取筛选后数据行号 获取筛选后行号总数
获取筛选后行号总数 Sub get_total_filer_count()Dim rngCell As RangeDim lngRowCnt As LongFor Each rngCell In [a ...
- VBA获取数据区域的行列数
VBA获取数据区域的行列数 方法1 方法2 方法1 ActiveSheet.UsedRange.Rows.Count ActiveSheet.UsedRange.Columns.Count 缺点:把最 ...
- 基于目标识别的区域入侵检测——详细实现从获取区域到检测入侵目标
前言 1.区域入侵检测是通过识别目标之后获取目标坐标位置,判断目标是否在所标定的区域内出现,常常被用在电子围栏,不安全区域入侵检测,智慧城市,安防监控等领域.具体使用场景有,在标定的区域内不能抽烟,进 ...
- vba monthview控件64位_利用VBA获取文件的信息和属性
大家好,我们今日讲解"VBA信息获取与处理"教程中第十七个专题"文件及文件夹信息的获取及操作"的第三节"利用VBA获取文件的信息和属性",这 ...
- java jtable逐行遍历_Java获取JTable值(每行)
我想从Jtable中获取值,并且我使用getvalueat尝试了它,但是每当我尝试从JTable获取值时,它只会从所选行的第一列获取值,我需要获取所有值来自我选择的Jtable.你能帮我解决这个问题吗 ...
- pandas使用idxmax函数获取dataframe每个数据行中最大值对应的列名称(column label of max value in each row in dataframe)
pandas使用idxmax函数获取dataframe每个数据行中最大值对应的列名称(column label of max value in each row in dataframe) 目录
- pandas使用idxmin函数获取dataframe每个数据行中最小值对应的列名称(column label of min value in each row in dataframe)
pandas使用idxmin函数获取dataframe每个数据行中最小值对应的列名称(column label of min value in each row in dataframe) 目录
- R语言nrow函数获取dataframe或者matrix行计数统计
R语言nrow函数获取dataframe或者matrix行计数统计 目录 R语言nrow函数获取dataframe或者matrix行计数统计 #基本语法
- R获取股票数据并进行进行可视化分析
R获取股票数据并进行进行可视化分析 # 加载依赖的包 library(quantmod) library(ggplot2) library(magrittr) library(broom) # 设置计 ...
最新文章
- Symantec:揭秘Hidden Lynx组织的APT***行动
- linux下删除乱码文件、目录
- 带你学python基础:变量和基本数据类型
- csdn的博客文化真好
- Python str / bytes / unicode 区别详解 - Python零基础入门教程
- 华为Mate 40 Pro全新概念图曝光:这设计有点夸张了
- 买基金,是长期持有好,还是短线操作好?
- linux镜像文件_深度UI + Ubuntu系统,堪称最强最美Linux发行版!你敢升级吗?
- android 商米扫码sdk,商米收银机|外接扫码枪问题:以T2为例
- 计算机软考高级科目试题及答案,软考高级哪个含金量高 2018计算机软考信息系统项目管理师单选试题及答案...
- Opencv安装与环境配置
- 训练集、测试集、验证集之间的区别及理解
- oracle ogg操作日志,对一段Oracle GoldenGate (OGG) 传输过程日志(.rpt文件)的解释...
- 中继器、集线器、网桥、交换机、路由器、网关的超全总结
- Linux修改文件句柄数及vm.max_map_count、stack size
- 如何确定一台电脑配置的高低
- 快手 网络安全工程师 二面总结(归档,凉经)
- 读小说赚钱吗?这个年入百万
- 相机标定与3D重建(0)标定板说明
- Python中常用最神秘的函数! lambda 函数深度总结!
热门文章
- API调用展示,淘宝、天猫、拼多多商品页面详情API,APP端原数据参数返回
- 2022春招字节跳动校招内推码: UX8B35W
- 2018校招携程测评,赞RP
- web前端知识总结二(css(其他)+移动web网页开发)
- 「Python条件结构」嵌套if:实现奖学金评定
- vue3.0 + JsBarcode 循环生成多个条形码(setup语法糖)
- 三姬分金/四姬分金/五姬分金(海盗分金币)等经典博弈论问题
- 计算机美化标题教案,计算机基础教案标题.doc
- 爬虫实战【12】使用cookie登陆豆瓣电影以及获取单个电影的所有短评
- CNCERT发布通报:大量家用路由器DNS遭黑客篡改