以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]怎样一键删除所有表中单元格内的空行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=89007) |
-- 作者:jyh7081 -- 发布时间:2016/8/13 13:07:00 -- [求助]怎样一键删除所有表中单元格内的空行 就是单元格内的硬回车产生的行,不是指表内的行。 |
-- 作者:Hyphen -- 发布时间:2016/8/13 14:56:00 -- Tables("表A").Current("第三列") = Tables("表A").Current("第三列").Replace(chr(10), "").Replace(chr(13), "") |
-- 作者:jyh7081 -- 发布时间:2016/8/13 15:50:00 -- .Replace(chr(10), "").Replace(chr(13), "") 这个看明白了,是把回车和换行符替换为"" Tables("表A").Current("第三列") ------------把这个换成所有表的所有列,不知怎么换,是不是要遍历For Each tb As Table In Tables......?,再指点一下 |
-- 作者:Hyphen -- 发布时间:2016/8/13 16:05:00 -- 遍历所有表,所有行,所有列 |
-- 作者:jyh7081 -- 发布时间:2016/8/13 18:06:00 -- 一时写不了... |
-- 作者:jyh7081 -- 发布时间:2016/8/14 12:38:00 -- 版主好!有空帮忙看看。先谢谢了! |
-- 作者:大红袍 -- 发布时间:2016/8/14 12:45:00 -- For Each t As Table In Tables |
-- 作者:jyh7081 -- 发布时间:2016/8/14 12:47:00 -- 谢谢!好好研究一下。 |
-- 作者:jyh7081 -- 发布时间:2016/8/14 13:26:00 -- 版主,还有点问题: 执行代码后,确实删除了所有换行符及回车符。 但和我实际想解决的问题还有些不同:在单元格里编辑字符串时,如果用Ctrl+回车就会产生换行。这个单元格的内容如果导入word模板就会产生分段的效果。如果单元格尾部产生这样一个换行符就很不容易发现,往往是导出word模板发现空行后,才知道。 我想达到这样的效果: 执行前(共6行,两行字符,4行空行): AAA AAA 执行后(两行字符): AAA AAA |
-- 作者:大红袍 -- 发布时间:2016/8/14 16:58:00 -- For Each t As Table In Tables For Each r As Row In t.rows For Each c As Col In t.cols Dim ary() As String = cstr(r(c.name)).split(new Char() {chr(10), chr(13)}) Dim str As String = "" For Each s As String In ary If s.trim > "" Then str &= s & vbcrlf End If Next r(c.name) = str Next Next Next |