Foxtable(狐表)用户栏目专家坐堂 → [求助]我这段代码是查找excel中标签的但是执行不进去呀


  共有4485人关注过本帖树形打印复制链接

主题:[求助]我这段代码是查找excel中标签的但是执行不进去呀

帅哥哟,离线,有人找我吗?
a937775799
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:594 积分:4030 威望:0 精华:0 注册:2015/3/10 13:25:00
[求助]我这段代码是查找excel中标签的但是执行不进去呀  发帖心情 Post By:2019/3/1 22:50:00 [只看该作者]

 Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim ii As Integer = 0 
Dim Rg As MSExcel.Range
Dim rn As Integer = 1
For rn = 1 To 100
    For j As Integer = 1 To 100
        Rg = Ws.Cells(rn,j)

        If Rg.text = "<End>"   
            ii = ii + 1
            MessageBox.Show(ii)
        End If
        If ii=2
            Exit For
        End If
    Next
    If ii=2
        Exit For
    End If
Next
Ws.Rows(rn+1).PageBreak = MSExcel.XlPageBreak.xlPageBreakManual

以上代码 ii根本执行不进去,执行一次 要几分钟,清帮我看看 谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/1 23:00:00 [只看该作者]

execl文件发上来测试

 回到顶部
帅哥哟,离线,有人找我吗?
a937775799
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:594 积分:4030 威望:0 精华:0 注册:2015/3/10 13:25:00
  发帖心情 Post By:2019/3/1 23:12:00 [只看该作者]

顺便帮我看看 里面红色的代码 计算table里面的数量这样写 对吗
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:混凝土灌注桩(钢筋笼)检验批.xls


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/2 8:57:00 [只看该作者]

没看懂您要计算什么?分页?生成报表后是不会有任何设计时模板的标签的,比如<End>是不存在的。

如果要计算合计,应该在Foxtable的表格里计算,然后通过变量绑定:http://www.foxtable.com/webhelp/scr/1391.htm

上传生成之后的报表,并标注一下要什么效果

 回到顶部
帅哥哟,离线,有人找我吗?
a937775799
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:594 积分:4030 威望:0 精华:0 注册:2015/3/10 13:25:00
  发帖心情 Post By:2019/3/2 9:55:00 [只看该作者]

我好像发现问题了,早上一起来就发现,昨天搞得太晚进了死胡同,没反应过来
''''''''''''''''''''''代码
 Dim Book As New XLS.Book(mb)  ''模版文件
Book.Build() '生成细节区 
Dim fl As String = tf ''临时报表文件
Book.Save(fl) '保存文件
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
''''''''''''''''''''''''''''''''
fl是已经通过模板生产好的文件里面是不存在<End>的,所以上面代码是没用的,
。。。我想实现这样的功能,比如通过模板生产文件A1.xls.。。。。A100.xsl,每生产一个文件A*.xls导入到一个Aall.xsl总文件,每次导入都在之前的后面一页插入,
导入结束,用Aall.xsl生产pdf文件
[此贴子已经被作者于2019/3/2 9:55:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/2 9:58:00 [只看该作者]

那么为什么不通过模板直接生成一个文件?而是生成100个文件再合并为一个?

 回到顶部
帅哥哟,离线,有人找我吗?
a937775799
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:594 积分:4030 威望:0 精华:0 注册:2015/3/10 13:25:00
  发帖心情 Post By:2019/3/2 10:28:00 [只看该作者]

因为我 记录和模板 是多对多的关系, 我先要查询记录,然后选择需要打印的模板,而且查询出来的记录不一定都要打, 
我只能一个记录一个模板 组合起来 生产文件 在插入一个总文件

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/2 11:12:00 [只看该作者]

合并不同的Excel到同一个工作薄
Dim dlg As New OpenFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
dlg.MultiSelect = True
If dlg.ShowDialog = DialogResult.OK Then
    Dim App As New MSExcel.Application
    try
        Dim Wb As MSExcel.Workbook = App.WorkBooks.open("f:\test.xls")
        Dim ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
        Dim rg As MSExcel.Range  = ws.Cells(ws .UsedRange.Rows.Count+1,1)
        app.DisplayAlerts = False
        Dim Wb2 As MSExcel.Workbook
        For Each file As String In dlg.FileNames
            Wb2 = App.WorkBooks.open(file)
            
            Dim Ws2 As MSExcel.WorkSheet = Wb2.WorkSheets(1)
            Dim Rg2 As MSExcel.Range = Ws2.UsedRange
            rg2.Copy
            rg.PasteSpecial()
            rg = ws.Cells(ws .UsedRange.Rows.Count+1,1)
            Wb2.Close
        Next
        Wb.Save
        Wb.Close
        App.Quit
    catch ex As Exception
        App.Quit
    End try
End If

 回到顶部
帅哥哟,离线,有人找我吗?
a937775799
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:594 积分:4030 威望:0 精华:0 注册:2015/3/10 13:25:00
  发帖心情 Post By:2019/3/2 11:36:00 [只看该作者]

我去试下,顺便问问,怎么后台新建一个excel文档呢

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105473 积分:536350 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/3/2 11:58:00 [只看该作者]

参考:http://www.foxtable.com/webhelp/scr/2121.htm

创建新的工作簿。如下面的代码,就将新建一个工作簿,该工作簿的第一个工作表的名称改为hhh,同时在A1单元格写入“hhh123”,然后保存为D:\123.xls。

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Wb.WorkSheets(1).name = "hhh"
Wb.WorkSheets(1).range("A1").Value = "hhh123"
Wb.SaveAs("d:\123.xls")
App.Quit

需要说明的是,在创建新工作簿后,该工作簿就成为活动工作簿。

 回到顶部
总数 54 1 2 3 4 5 6 下一页