EXCEL vba 开发实现数据创建及更新的问题
各位站友大家好,我是做自动控制的,我们经常要做IO表和电缆表(均为EXCEL格式)。第一个表示用于设计和维护使用,第二个表供施工单位使用,虽然第二种表也包含了第一张表的信息,但行业规定必须出两种格式都交付甲方。这就造成了重复工作,而且修改时容易遗漏。因此,希望开发一个VBA程序读IO表的内容自动生成电缆表。
简化的说IO表包含关键内容和格式如下:(假设只有8行数据,一般来讲是8的整数倍行的数据作为一组,一个IO表里有若干组)
---------------------------------------
硬件地址 名称 去处
1.0 a1 POS A
1.1 b2 POS B
1.2 备用
1.3 c3 POS A
1.4 c4 POS B
1.5 备用
1.6 备用
1.7 d1 POS A
---------------------------------------
对应的电缆表就是:
电缆编号 去处 地址 含义
101 POS A 1.0 a1
101 POS A 1.3 c3
101 POS A 1.7 d1
102 POS B 1.2 b2
102 POS B 1.4 c4
----------------------------------------
当然对于电缆表还要将同一根电缆的部分单元格合并之类,这里就不体现了,也不是关键内容。
比较麻烦的地方体现在:
1.每根电缆内包含的IO数量不能无限增加,例如只有3芯,6芯,8芯,10芯几种规格。(最后剩下单个的点可以放到3芯的里面)可以优先选择多芯的。而且一般一个IO点需要2芯至6芯线不等。
2.如果IO表里面新增点,不是加到最后面,因为IO点只能是8的整数倍是根据不同硬件型号来的。所以新增的点只能加到之前预留的备用点的位置。这就造成一个问题如果有新增IO点,这个点就会加到中间的位置。或者某些点去处改变了,例如去处由SECTION B改为SECTION A, 或者某点转到了新增的SECTION C的去处。这样的话重新生成电缆表就可能造成全部电缆编号的重新排列,包括每根电缆采用几芯的也有可能就变了。但此时原始电缆表已交给施工单位所以不能总是完全更新,只能是保留旧的,然后新增或删除电缆。所以程序功能要分为新建电缆表和更新电缆表两种情况。更新电缆表就需要先读已经生成的电缆表的信息,再结合新IO表做修改。
----------------------------------------
请问用什么数据结构处理这个问题比较好
希望大家指教。谢谢。 excel vba 数据结构
[解决办法]
首先两个表关联生成新的表