以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]关于数据导入导出 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=187837) |
||||
-- 作者:ntqhj -- 发布时间:2023/8/16 9:19:00 -- [求助]关于数据导入导出 如何将foxtable的字段的内容导出到税务局开票系统特定模版的对应字段 |
||||
-- 作者:有点蓝 -- 发布时间:2023/8/16 9:30:00 -- 直接设计模板即可:http://www.foxtable.com/webhelp/topics/2877.htm |
||||
-- 作者:ntqhj -- 发布时间:2023/8/16 12:20:00 -- 窗口,绑定主表及子表(都是作为副本表),主表同一合同号下有多条记录,根据合同号筛选后,子表也会根据主表合同号的筛选结果显示对应数据,想加个按钮,只要点下按钮,该子表下的数据就会自动汇总到税务局开piao系统特定模版里,这个代码应该如何写? |
||||
-- 作者:ntqhj -- 发布时间:2023/8/16 12:55:00 -- 这个从帮助找到,似乎已解决 |
||||
-- 作者:ntqhj -- 发布时间:2023/12/7 11:43:00 -- 税务局导入文件模板又变了,导出到Excel要求的模板
: 导出的值从第四行开始写入,列标题第一行、第二行、第三行的列名相同也可满足税务局导入文件要求,如何实现列标题第一行、第二行、第三行填写相同的列名?
|
||||
-- 作者:有点蓝 -- 发布时间:2023/12/7 11:47:00 -- For c As Integer = 0 To nms.length - 1 Sheet(0, c).Value = caps(c) \'指定列标题 Sheet(1, c).Value = caps(c) \'指定列标题 Sheet(2, c).Value = caps(c) \'指定列标题 Sheet.Cols(c).Width = szs(c) \'指定列宽 Next For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据 For c As Integer = 0 To nms.length - 1 Sheet(r + 3, c).Value = dt.rows(r)(nms(c)) Next Next
|
||||
-- 作者:ntqhj -- 发布时间:2024/7/19 10:53:00 -- 2种导入代码,合并使用,首先选择需要导入的文件,然后导入对应字段的内容,老师帮解决下呢: 自己选择文件的导入代码 Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog dlg.Filter = "Excell文件 .xlsx|*.xlsx|Excell文件 .xls|*.xls" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 Dim mg As New Merger mg.SourcePath = dlg.FileName mg.Format = "excel" \'指定格式 \'mg.Filter = "[交易时间] > #5/31/1999#" \'指定合并条件 \'mg.Filter = "[记账时间] > #5/31/1999#" \'指定合并条件 \'mg.Filter = "[清分时间] > #5/31/1999#" \'指定合并条件 mg.Merge() \'开始合并 End If 导入指定字段内容的代码 Dim Book As New XLS.Book("D:\\360安全浏览器下载\\管理系统下载的数据\\管理系统数据下载为导出\\中交中石油电子加油卡.xlsx") Dim Sheet As XLS.Sheet = Book.Sheets(0) For i As Integer = 0 To Sheet.Rows.Count - 1 If sheet(0, i).Text = "中石油电子卡加油列表" Then messagebox.show("文件修复未完成,不能继续!请再次点击 修复待导入数据 按钮!", "提示") Return End If Next Tables("中交中石油电子加油卡").StopRedraw() \'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致 Dim nms() As String = {"电子加油卡", "面值", "单价优惠", "实付金额", "实付返利金", "分配状态", "首次分配用户手机号", "首次分配用户车牌号", "首次分配用户姓名", "当前持有用户手机号", "当前持有用户车牌号", "当前持有用户姓名", "首次分配时间", "卡券状态", "加油站点", "加油时间", "支付方式", "采购时间", "订单号", "备注"} \'注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题 For n As Integer = 1 To Sheet.Rows.Count - 1 Dim r As Row = Tables("中交中石油电子加油卡").AddNew() For m As Integer = 0 To nms.Length - 1 r(nms(m)) = Sheet(n, m).Value Next Next Tables("中交中石油电子加油卡").ResumeRedraw() [此贴子已经被作者于2024/7/19 10:56:42编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2024/7/19 11:07:00 -- Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog dlg.Filter = "Excell文件.xlsx|*.xlsx" \'设置筛选器 If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮 Dim mg As New Merger mg.SourcePath = dlg.FileName mg.Format = "excel2007" \'指定格式 mg.SourceTableName = "execl文件sheet的名称$" \'指定要合并的表 mg.DataTableName = "中交中石油电子加油卡" \'指定接收数据的表 mg.Fields = "电子加油卡, 面值, 单价优惠, ....." mg.Merge() \'开始合并 End If |
||||
-- 作者:ntqhj -- 发布时间:2024/7/19 15:21:00 -- 执行后,foxtable表里多了一个空行,感觉是标题行,直接从Excel数据行开始导入应该如何修改呢? [此贴子已经被作者于2024/7/19 15:24:24编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2024/7/19 15:55:00 -- 默认就是只导入数据行。第一行标题不可能作为空行导入的。 应该是execl默认就有空行
|