以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]这段打印代码出现以下错误,代码哪里出错了,弄了半天,弄不好,谢谢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=136778)

--  作者:hrw68529
--  发布时间:2019/6/21 13:58:00
--  [求助]这段打印代码出现以下错误,代码哪里出错了,弄了半天,弄不好,谢谢

图片点击可在新窗口打开查看此主题相关图片如下:截图00.png
图片点击可在新窗口打开查看


代码:\'\'\'
Dim tm As String  = ProjectPath & "Attachments\\工作情况汇报.doc" 
Dim r As Row = Tables("工作汇报").Current
Dim fl As String ="\\\\hrw\\data\\军人事务局\\周工作汇报\\" & r("填报日期") & "-" & "工作情况汇报.doc" 
Dim wrt As New WordReport(Tables("工作汇报"),tm,fl) \'定义一个WordReport
Dim str1 As String = ""
Dim ls As List(Of String()) = Tables("工作汇报").DataTable.GetValues("本周工作完成情况", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls.Count - 1
    Dim s() As String = ls(i)
    Dim flag As String = vbcrlf & " "
    If i = ls.Count-1 Then
        flag = ""
    End If
    
    If s(1) > "" Then
        str1 &= s(0) & flag
     Else
        str1 &= " "
    End If
Next
Dim str2 As String = ""
Dim ls2 As List(Of String()) = Tables("工作汇报").DataTable.GetValues("下周工作安排", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls2.Count - 1
    Dim s() As String = ls2(i)
    Dim flag As String = vbcrlf & " "
    If i = ls2.Count-1 Then
        flag = ""
    End If
    
    If s(1) > "" Then
        str2 &= s(0) & flag
     Else
        str2 &= " "
    End If
Next

wrt.Replace("[列表]", str1)
wrt.Replace("[列表1]", str2)
wrt.Build() \'生成报表
wrt.Show() \'显示报表

--  作者:有点甜
--  发布时间:2019/6/21 15:08:00
--  

不理解你的意思。红色代码,请用两列

 

Dim ls As List(Of String()) = Tables("工作汇报").DataTable.GetValues("本周工作完成情况|第二列", Tables("工作汇报").Filter,"序号")

 


--  作者:hrw68529
--  发布时间:2019/6/21 15:08:00
--  
有点甜,只有一列,怎么弄
--  作者:有点甜
--  发布时间:2019/6/21 15:32:00
--  

Dim tm As String  = ProjectPath & "Attachments\\工作情况汇报.doc"
Dim r As Row = Tables("工作汇报").Current
Dim fl As String ="\\\\hrw\\data\\军人事务局\\周工作汇报\\" & r("填报日期") & "-" & "工作情况汇报.doc"
Dim wrt As New WordReport(Tables("工作汇报"),tm,fl) \'定义一个WordReport
Dim str1 As String = ""
Dim ls As List(Of String) = Tables("工作汇报").DataTable.GetValues("本周工作完成情况", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls.Count - 1
    Dim s As String = ls(i)
    Dim flag As String = vbcrlf & " "
    If i = ls.Count-1 Then
        flag = ""
    End If
   
    str1 &= s(0) & flag
   
Next
Dim str2 As String = ""
Dim ls2 As List(Of String) = Tables("工作汇报").DataTable.GetValues("下周工作安排", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls2.Count - 1
    Dim s As String = ls2(i)
    Dim flag As String = vbcrlf & " "
    If i = ls2.Count-1 Then
        flag = ""
    End If
   
    str2 &= s(0) & flag
Next


wrt.Replace("[列表]", str1)
wrt.Replace("[列表1]", str2)
wrt.Build() \'生成报表
wrt.Show() \'显示报表


--  作者:hrw68529
--  发布时间:2019/6/21 16:36:00
--  
有点甜,报错说:超出数组索引界限


--  作者:hrw68529
--  发布时间:2019/6/21 16:38:00
--  
报错:
--  作者:hrw68529
--  发布时间:2019/6/21 16:39:00
--  
报错:
图片点击可在新窗口打开查看此主题相关图片如下:截图01.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2019/6/21 17:06:00
--  

Dim tm As String  = ProjectPath & "Attachments\\工作情况汇报.doc"
Dim r As Row = Tables("工作汇报").Current
Dim fl As String ="\\\\hrw\\data\\军人事务局\\周工作汇报\\" & r("填报日期") & "-" & "工作情况汇报.doc"
Dim wrt As New WordReport(Tables("工作汇报"),tm,fl) \'定义一个WordReport
Dim str1 As String = ""
Dim ls As List(Of String) = Tables("工作汇报").DataTable.GetValues("本周工作完成情况", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls.Count - 1
    Dim s As String = ls(i)
    Dim flag As String = vbcrlf & " "
    If i = ls.Count-1 Then
        flag = ""
    End If
   
    str1 &= s & flag
   
Next
Dim str2 As String = ""
Dim ls2 As List(Of String) = Tables("工作汇报").DataTable.GetValues("下周工作安排", Tables("工作汇报").Filter,"序号")
For i As Integer = 0 To ls2.Count - 1
    Dim s As String = ls2(i)
    Dim flag As String = vbcrlf & " "
    If i = ls2.Count-1 Then
        flag = ""
    End If
   
    str2 &= s & flag
Next


wrt.Replace("[列表]", str1)
wrt.Replace("[列表1]", str2)
wrt.Build() \'生成报表
wrt.Show() \'显示报表


--  作者:hrw68529
--  发布时间:2019/6/21 17:20:00
--  
谢谢,好了