以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [原创]execl表格某一列的所有行重复值合并自定义函数 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=67389) |
-- 作者:baicaocao -- 发布时间:2015/4/23 13:03:00 -- [原创]execl表格某一列的所有行重复值合并自定义函数 \'引用方式:Functions.Execute("表格行合并",sheet1,1) \'第一个sheet1代表工作表. \'第二个1代表要合并那一列. \'默认从第一行开始合并. Dim sheet1 As object = args(0) \'这里开始加载数据. Dim l As Integer = args(1) \'要合并的列的位置. Dim v As Integer = 1 \'计数器 Dim h As Integer = 1 \'合并起始行 Dim vl As String vl = sheet1(0,l).value \'定位第一个值 For i As Integer = 1 To sheet1.Rows.Count -1 If sheet1(i,l).value = vl Then \'如果第一个值和下个值相同 v + = 1 \'如果相同则继续循环并且将v的值加1 Else \'如果不相同了.则进行合并 sheet1.MergeCell(i-v,l,v,1) \'合并行数 \'合并起始行为当前行i-v vl = sheet1(i,l).Value \'并且将vl重新赋值. v = 1 \'重新对v清零 End If Next \'bk.save()
|
-- 作者:Bin -- 发布时间:2015/4/23 13:56:00 -- 谢谢分享 |
-- 作者:湛江智 -- 发布时间:2017/8/5 23:24:00 -- 楼主,这个代码写在哪里才能用的? 试了在窗口的按钮里没反应 |
-- 作者:有点甜 -- 发布时间:2017/8/6 11:34:00 -- 以下是引用湛江智在2017/8/5 23:24:00的发言:
楼主,这个代码写在哪里才能用的? 试了在窗口的按钮里没反应
贴出你的测试代码。
Dim book As new XLS.Book("d:\\test.xls") |