以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] BOM 在导出的时候,将每个组件当成一个独立的Sheet输出 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=107992) |
|||||||||||
-- 作者:2900819580 -- 发布时间:2017/10/13 20:17:00 -- [求助] BOM 在导出的时候,将每个组件当成一个独立的Sheet输出
BOM 在导出的时候,将每个组件当成一个独立的Sheet输出
如上图所示,如何可以做到,将整个BOM输入为一个BOM表,将每一个组件下的父阶输出为独立的Sheet
注,可以根据i 列中的 “--” 判断 [此贴子已经被作者于2017/10/13 20:17:27编辑过]
|
|||||||||||
-- 作者:有点蓝 -- 发布时间:2017/10/13 20:35:00 -- 按i 列中的 “--” 锁筛选后再导出 Tables("表A").Filter = "i = \'--\'"
|
|||||||||||
-- 作者:2900819580 -- 发布时间:2017/10/13 21:07:00 -- 以下是引用有点蓝在2017/10/13 20:35:00的发言:
按i 列中的 “--” 锁筛选后再导出 Tables("表A").Filter = "i = \'--\'"
还是不太明白。这样只可以导出全部的组件而,我的想法是每一个组件生成一个Sheet
如:
是一个组件,则生成单独的Sheet,Sheet的名称为对应行的(“名称”) 组件下的所有物料,含组件,复制到新的Sheet上 |
|||||||||||
-- 作者:有点蓝 -- 发布时间:2017/10/13 21:53:00 -- Dim t As Table = Tables("表A"). Dim Products As List(Of String) = t.DataTable.GetValues("总库号","i=\'--\'") For Each p As String In Products t.Filter = "总库号 like \'" & p & "%\'" t.SaveExcel("f:\\abc.xls",p) Next
|
|||||||||||
-- 作者:2900819580 -- 发布时间:2017/10/16 16:18:00 -- 老师,按代码执行后会出现两个问题, 1》 如总序号是1.3 他会把1.30 1.31..............都含括进去,
但出现如上图的错误。
2》 如上图所示,他会把后续其它阶层的也含括进去
这个我就不知如何处理了。
|
|||||||||||
-- 作者:有点蓝 -- 发布时间:2017/10/16 20:32:00 -- tb.Filter = "总序号 like \'" & p & ".%\' Or 总序号 = \'" & p & "\'" 编号规律要统一,如 1.03 1.03.01 1.03.02 1.30 1.31 或者增加辅助列进行分类
|
|||||||||||
-- 作者:2900819580 -- 发布时间:2017/10/16 21:35:00 --
tb.Filter = "总序号 like \'" & p & ".%\' Or 总序号 = \'" & p & "\'"
执行后,得到上面左边的效果,但我想要的是右边的样子。 |
|||||||||||
-- 作者:有点蓝 -- 发布时间:2017/10/16 21:54:00 -- 参考6楼后面的2种用法 |
|||||||||||
-- 作者:有点甜 -- 发布时间:2017/10/17 9:13:00 -- 不会做的话,把你的数据表发上来测试。 |
|||||||||||
-- 作者:2900819580 -- 发布时间:2017/10/17 14:17:00 -- 谢谢老师,已经做好了,思路很重要,,,,,,,把代码分享出来。。。。。
Dim tb As Table = Tables(e.Form.Name & "_Table1") Functions.Execute("打开导出文件" , dlg.FileName ) [此贴子已经被作者于2017/10/17 14:18:03编辑过]
|