以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=46978)

--  作者:tungwun
--  发布时间:2014/3/2 19:07:00
--  [求助]
EXCEL打印错误!  請問如何修改??
Dim Book As New XLS.Book(ProjectPath & "Attachments\\TAXI單.xls")
Dim fl As String = ProjectPath & "Reports\\TAXI單.xls"
For n As Integer = 0 To Ls.Count-1 \'向工作表的單元格中設置值
    Sheet(n, 0).Value = Ls(n) 
   Next 
Dim  Ls As New List(Of String )
For Each r As DataRow In DataTables("TAXI").Select("修理內容 Is Not Null")
    Ls.AddRange(r("修理內容").split(" "))
Next
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.PrintOut
App.Quit
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2014/3/2 19:24:00
--  
 这个意思?

Dim  Ls As New List(Of String )
For Each r As DataRow In DataTables("TAXI").Select("修理內容 Is Not Null")
    Ls.AddRange(r("修理內容").split(" "))
Next

Dim Book As New XLS.Book(ProjectPath & "Attachments\\TAXI單.xls")
Dim fl As String = ProjectPath & "Reports\\TAXI單.xls"
For n As Integer = 0 To Ls.Count-1 \'向工作表的單元格中設置值
    Sheet(n, 0).Value = Ls(n)
Next

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.PrintOut
App.Quit

--  作者:tungwun
--  发布时间:2014/3/2 19:33:00
--  [求助]
这个是指(修理内容文字出现空格自动跳到下一行?

Dim  Ls As New List(Of String )
For Each r As DataRow In DataTables("TAXI").Select("修理內容 Is Not Null")
    Ls.AddRange(r("修理內容").split(" "))
Next


--  作者:有点甜
--  发布时间:2014/3/2 19:45:00
--  
 呃,可以这么理解。

 不过你这段打印的代码完全不通啊,是完整了吗?

--  作者:tungwun
--  发布时间:2014/3/2 20:09:00
--  
请问如何修改?

Dim Book As New XLS.Book(ProjectPath & "Attachments\\TAXI單.xls")
Dim fl As String = ProjectPath & "Reports\\TAXI單.xls"
For n As Integer = 0 To Ls.Count-1 \'向工作表的單元格中設置值
    Sheet(n, 0).Value = Ls(n) 
   Next 
Dim  Ls As New List(Of String )
For Each r As DataRow In DataTables("TAXI").Select("修理內容 Is Not Null")
    Ls.AddRange(r("修理內容").split(" "))
Next
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(fl)
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Ws.PrintOut
App.Quit


--  作者:有点甜
--  发布时间:2014/3/2 20:30:00
--  
 呃,关键是我不知道你想干嘛啊。

 根据 TAXI單 模板 生成报表,然后往报表的第一列依次写入修理内容?逻辑很有问题吧?

 请上传例子。

--  作者:tungwun
--  发布时间:2014/3/7 12:40:00
--  [求助]
Execl打印[修理内容]加逗号自动换下一行?如:修理空调,入环保雪种,入134a泵油

打印换成:
修理空调
入环保雪种
入134a泵油
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:taxi單.xls


--  作者:狐狸爸爸
--  发布时间:2014/3/7 15:59:00
--  

这个只能用标记与事件解决。


1、做个打印按钮:
Dim Book As New XLS.Book("c:\\book5.xls")
For i as integer = 1 to 4
     Book.Marks.Add("标记" & i,"")
next
Book.Build()
Book.Save("c:\\reports\\test.xls") 
Dim Proc As New Process
Proc.File = "c:\\reports\\test.xls"
Proc.Start()
 
2、报表事件BuildDetail:
 
Select Case e.Book.TempLate
   case ”book5“
        For i as integer = 1 to 4
              e.Book.Marks("标记" & i) = ""
      next
      if e.datarow isnot nothing Andalso e.datarow.Isnull("列名") = False then
           dim vals() = e.datarow("列名").Split(",")
           Dim cnt = Math.Min(4,vals.length)
           For i as integer = 1 to cnt
               e.Book.Marks("标记" & i) = "" = vals(i)
           next
      end if
end select


 


--  作者:tungwun
--  发布时间:2014/3/7 16:47:00
--  [求助]
 运行出现错误信息?


.NET Framework 版本:2.0.50727.5477
Foxtable 版本:2014.3.8.1
错误所在事件:Excel报表,BuildDetail
详细错误信息:
索引在陣列的界限之外。


--  作者:tungwun
--  发布时间:2014/3/7 22:18:00
--  [求助]
运行代码出现错误信息?


.NET Framework 版本:2.0.50727.5477
Foxtable 版本:2014.3.8.1
错误所在事件:Excel报表,BuildDetail
详细错误信息:
索引在陣列的界限之外。


1、做个打印按钮:
Dim Book As New XLS.Book("c:\\book5.xls")
For i as integer = 1 to 4
     Book.Marks.Add("标记" & i,"")
next
Book.Build()
Book.Save("c:\\reports\\test.xls") 
Dim Proc As New Process
Proc.File = "c:\\reports\\test.xls"
Proc.Start()
 
2、报表事件BuildDetail:
 
Select Case e.Book.TempLate
   case ”book5“
        For i as integer = 1 to 4
              e.Book.Marks("标记" & i) = ""
      next
      if e.datarow isnot nothing Andalso e.datarow.Isnull("列名") = False then
           dim vals() = e.datarow("列名").Split(",")
           Dim cnt = Math.Min(4,vals.length)
           For i as integer = 1 to cnt
               e.Book.Marks("标记" & i) = "" = vals(i)
           next
      end if
end select