麦粉社区
>
帖子详情

补录表一次插入多行数据

电子表格软件 发表于 2024-4-18 10:02
发表于 2024-4-18 10:02:01

根据选择的参数个数(允许多选),为补录表一次插入多行,并且根据选择的参数往新的行里插入数据。


例:A参数选择1、2,B参数选择a、b,点击新增的时候时候插入四行,数据分别为1a,1b,2a,2b四条。


现在用参数循环doInsertRowClick插入多行,然后设置一个onWriteBackInsertedRow事件,向表格插入数据,(现在情况是每插入一行,就会执行一次onWriteBackInsertedRow,后面执行的时候回覆盖前面填的内容,并且千前面的进程不会停止),因为多次执行导致速度极慢。有有没有办法让插完多行行完成之后,再统一执行onWriteBackInsertedRow事件,只插入一次。

发表于 2024-4-18 10:15:11
好复杂哦。。厉害,自己写这么复杂的宏代码
  •   李海生
    两边的代码都是基于wiki上面找的例子修改的。有兴趣可以发你连接
    
    2024-4-18 10:17| 回复

回复

使用道具 1 举报

发表于 2024-4-18 13:59:37
宏菜鸟,坐等大神看看有啥好方案
  •   李海生
    问题已经解决了,在doInsertRowClick事件循环插入之前,查询好相关的字段信息,以相同查询的顺序写入集合中,设置为全局参数,给onWriteBackInsertedRow时用。在onWriteBackInsertedRow事件时,根据总行数和当前行数计算出序号(从0开始),然后用setWriteBackCellData写入数据。
    2024-4-25 10:46| 回复

回复

使用道具 举报

发表于 2024-4-18 14:21:07
sql有个cross join 即笛卡尔积
补录分别是俩表,A、B表,A参数写入A表,B参数写入B表
使用的时候再笛卡尔积即可

不过,这个业务场景没发现有啥意义,可以提供更详细的内容来获取更好的解决方案
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

5回帖数 0关注人数 560浏览人数
最后回复于:2024-4-18 14:21
快速回复 返回顶部 返回列表