开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 149|回复: 7
打印 上一主题 下一主题
收起左侧

[易语言] LibXL 实现两表数据关联和写入

[复制链接]
结帖率:89% (8/9)
跳转到指定楼层
楼主
发表于 2025-4-28 17:56:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式   广东省惠州市
50精币
使用的模块是 LibXL 和 高级表格
操作步骤:
模板路径:选择文件将首行标题导入高级表格
资料路径:选择文件匹配对应的标题,将资料写入高级表格标题以下的行
比如:(两边表格的标题内容不同、顺序不一致)
模板A标题为变量名、数据类型、值
资料B标题为数值、类型、变量


实现:
1、资料 B 标题变量绑定模板A标题变量名,类型绑定数据类型、数值绑定值
2、并将资料 B 标题下的内容写入到模板 A 标题下的行中

目前困难:不知道如何获取单元格位置,想法是绑定参数后,获取两边表格标题的位置,通过循环将B的内容写入到A中

请教解决方法

图片.png (20.15 KB, 下载次数: 0)

图片.png

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:89% (8/9)

签到天数: 4 天

沙发
 楼主| 发表于 2025-4-28 18:04:43 | 只看该作者   广东省惠州市
源文件,萌新写的可能比较乱

LibXL.e

1.04 MB, 下载次数: 3

回复

使用道具 举报

结帖率:100% (20/20)

签到天数: 11 天

板凳
发表于 2025-4-28 18:07:23 | 只看该作者   浙江省杭州市
听的一头雾水.... 没理解
回复

使用道具 举报

结帖率:89% (8/9)

签到天数: 4 天

地板
 楼主| 发表于 2025-4-28 21:07:27 | 只看该作者   广东省惠州市
b0y 发表于 2025-4-28 18:07
听的一头雾水.... 没理解

两个 excel 的标题做绑定,将其中一张表的资料拷贝过去

补充内容 (2025-4-28 21:09):
比如将B表表头为 变量 下面的所有资料拷贝到 A 表表头名为 变量名 的下面
回复

使用道具 举报

结帖率:94% (16/17)

签到天数: 11 天

地下
发表于 2025-4-29 09:59:07 | 只看该作者   黑龙江省哈尔滨市
不要说什么 变量 表头这些乱七八糟的,直接上最根本需求,是不是把A表数据按B表模板样式建立导入
回复

使用道具 举报

结帖率:89% (8/9)

签到天数: 4 天

6
 楼主| 发表于 2025-4-29 10:41:20 | 只看该作者   广东省惠州市
lisher 发表于 2025-4-29 09:59
不要说什么 变量 表头这些乱七八糟的,直接上最根本需求,是不是把A表数据按B表模板样式建立导入 ...

A表标题叫“名字”,B表标题名字叫“姓名”,将B表姓名下面的内容复制到A表标题下面,多个标题实现同样的效果,两张表标题顺序不一致。
回复

使用道具 举报

结帖率:89% (8/9)

签到天数: 4 天

7
 楼主| 发表于 2025-4-29 12:10:25 | 只看该作者   广东省惠州市
个人琢磨已实现......
回复

使用道具 举报

结帖率:89% (8/9)

签到天数: 4 天

8
 楼主| 发表于 5 天前 | 只看该作者   广东省惠州市
星见雅 发表于 2025-4-29 12:10
个人琢磨已实现......
  
子程序名返回值类型公开备 注
_生成预览_被单击  
变量名类 型静态数组备 注
标题循环计次整数型 
数据行循环计次整数型 
局_总行整数型 
局_总列整数型 
标题匹配项文本型 
高表列循环整数型 
表数量循环计次整数型 
最后插入行数整数型 
整表总行数整数型 
自动调整行计次整数型 
自动调整列计次整数型 
类型自动生成计次整数型 
通用数据写入循环整数型 
_启动窗口.禁止 = 真
最后插入行数 = 2
整表总行数 = 0
如果 (文本比较 (文件_取扩展名 (编辑框2.内容), “.xlsx”, ) = 0 文本比较 (文件_取扩展名 (编辑框2.内容), “.xls”, ) = 0)
如果真 (文本比较 (文件_取扩展名 (编辑框2.内容), “.xlsx”, ) = 0)
局_LibXL.创建xlsx ()

如果真 (文本比较 (文件_取扩展名 (编辑框2.内容), “.xls”, ) = 0)
局_LibXL.创建xls ()

局_LibXL.注册 (“gurl”, “windows-2b212d0308c4e60562b36866adz0z5ib”)
局_LibXL.打开Excel (编辑框2.内容)
' 取表数量,循环获取每张表的数据
计次循环首 (局_LibXL.取表数量 (), 表数量循环计次)
局_LibXL.取表句柄 (表数量循环计次 - 1)
局_LibXL.表格取使用区域_ (, , 局_总行, 局_总列)
整表总行数 = 整表总行数 + 局_总行
判断循环首 (高级表格1.行数 < 整表总行数 + 3)
高级表格1.插入行 (, )
判断循环尾 ()
' 表格标题和插入标题进行匹配
计次循环首 (高级表格1.列数, 高表列循环)
标题匹配项 = 到文本 (高级表格1.取数据 (2, 高表列循环))
计次循环首 (局_总列 + 1, 标题循环计次)
如果真 (局_LibXL.取单元格内容 (0, 标题循环计次 - 1, ) = 标题匹配项)
' 标题匹配,数据行写入
计次循环首 (局_总行, 数据行循环计次)
如果 (表数量循环计次 = 1)
高级表格1.置数据 (数据行循环计次 + 2, 高表列循环, 1, 局_LibXL.取单元格内容 (数据行循环计次, 标题循环计次 - 1, ))
高级表格1.置数据 (整表总行数 - 局_总行 + 数据行循环计次 + 2, 高表列循环, 1, 局_LibXL.取单元格内容 (数据行循环计次, 标题循环计次 - 1, ))

计次循环尾 ()

计次循环尾 ()
计次循环尾 ()
计次循环尾 ()
局_LibXL.释放 ()




i支持库列表   支持库注释   
eGrid高级表格支持库


通过匹配的内容,将对应数据写入表中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表