|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
你的范本文件无法得出你截图的那个例子,我只能再去查看代码的逻辑。你尝试修改下面的代码:
把:
If Len(arr3(i + 1, 1)) > 0 And Len(arr3(i + 1, 2)) = 0 And j > s - 3 Then
Exit For
Else
i = i + 1
End If
改成:
If Len(arr3(i + 1, 1)) > 0 And Len(arr3(i + 1, 2)) = 0 And j > s - 3 Then
i=i+1 '在这里插入一行
Exit For
Else
i = i + 1
End If
这里的 if 就是来 排除在底部 2 行显示类别的条件,s为40行,s-3就是37行,大于37行就不再继续显示类别了,需要切换到下一栏;
Len(arr3(i + 1, 1)) > 0 And Len(arr3(i + 1, 2)) = 0 是指数组第1位有内容,第2位为空,如果不是类别,则arr的第1位到第4位都是非空;
不管是哪种情况,i=i+1我感觉都是需要的,它表示数组要往后前进 1 位;
如果还不行,你再把你有问题的文件上传,如果数据需要保密,可用乱七八糟的随机字符替换;
|
|