Foxtable(狐表)用户栏目专家坐堂 → [求助] XLS.Book 是不是只能用 xls 而不能用 xlsx 格式


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

主题:[求助] XLS.Book 是不是只能用 xls 而不能用 xlsx 格式

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


加好友 发短信
等级:一尾狐 帖子:454 积分:3902 威望:0 精华:0 注册:2016/10/14 13:40:00
[求助] XLS.Book 是不是只能用 xls 而不能用 xlsx 格式  发帖心情 Post By:2022/4/12 20:20:00 [只看该作者]

老师您好。
XLS.Book 是不是只能用 xls 而不能用 xlsx 格式? 我试着保存为 xlsx格式的Excel,保存后,Excel打不开。
  • Dim Book As New XLS.Book("c:\reports\test.xls")
    Dim
    Sheet1 As XLS.Sheet = Book.Sheets(0)
    Book.Sheets.Add()
    '增加一个工作表
    Dim
    Sheet2 As XLS.Sheet = Book.Sheets(1)
    '引用新增加的工作表 


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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/12 20:33:00 [只看该作者]

打开的是xls 格式的文档,也必须要保存为xls 格式的文档。

打开的是xlsx格式的文档,也必须要保存为xlsx格式的文档。

不能打开xls 格式的文档,然后保存为xlsx格式的文档;反之亦然

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


加好友 发短信
等级:一尾狐 帖子:454 积分:3902 威望:0 精华:0 注册:2016/10/14 13:40:00
  发帖心情 Post By:2022/4/13 0:20:00 [只看该作者]

追问

在移动端 e.WriteBook() 方法,由于没有先打开Excel文件,而是生成的,保存的时候可以存成 .xlsx 格式吗?即是否可以保存为 "订单.xlsx"?

e.WriteBook() 的帮助页如下:
http://www.foxtable.com/mobilehelp/topics/0148.htm

 Case "orders.htm" '请求的是网页,返回的是Excel文件
        Dim nms() As String = 
{"
产品","客户","数量","单价","金额","日期"}
        Dim cmd As New SQLCommand
        cmd.ConnectionName = 
"
数据源名称"
        cmd.CommandText = 
"Se lect 
产品客户数量单价数量 * 单价 As 金额日期 From {订单} Where 日期 = #" Date.Today & "#"
        Dim dt As DataTable = cmd.ExecuteReader
        Dim Book As New XLS.Book
        Dim Sheet As XLS.Sheet = Book.Sheets(0)
        For c As Integer = 0 To nms.Length - 1
            Sheet(0, c).Value = nms(c)
        Next
        For r As Integer = 0 To dt.DataRows.Count - 1
            For c As Integer = 0 To nms.Length - 1
                Sheet(r + 1, c).Value = dt.Datarows(r)(nms(c))
            Next
        Next
        book.PreBuild = False 
'
非报表模请将PreBuild 属性设置为False
        e.WriteBook(book,
"
订单.xls",True)

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/13 8:31:00 [只看该作者]

可以的

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


加好友 发短信
等级:一尾狐 帖子:454 积分:3902 威望:0 精华:0 注册:2016/10/14 13:40:00
  发帖心情 Post By:2022/4/13 11:05:00 [只看该作者]

改了之后Excel打不开,报如下错误。

图片点击可在新窗口打开查看

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


加好友 发短信
等级:一尾狐 帖子:454 积分:3902 威望:0 精华:0 注册:2016/10/14 13:40:00
  发帖心情 Post By:2022/4/13 11:07:00 [只看该作者]

直接将上图中的 Excel 文件后缀改成 .xls 后就可以打开了


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


加好友 发短信
等级:一尾狐 帖子:454 积分:3902 威望:0 精华:0 注册:2016/10/14 13:40:00
  发帖心情 Post By:2022/4/13 11:08:00 [只看该作者]

代码如下:


Dim  Book As New XLS.Book
'单元格样式
Dim Style As Xls.Style = book.NewStyle '新建一个样式
Style.Font = new font("Arial",9, FontStyle.Regular)
'Style.AlignHorz = XLS.AlignHorzEnum.Center '居中
Style.AlignVert = XLS.AlignVertEnum.Center '居中
Style.WordWrap = True

'标题样式
Dim StyleHead As Xls.Style = book.NewStyle '新建一个样式
StyleHead.Font = new font("Arial",9, FontStyle.Bold)
StyleHead.ForeColor = Color.White
StyleHead.BackColor = Color.Gray
StyleHead.AlignHorz = XLS.AlignHorzEnum.Center '居中
StyleHead.AlignVert = XLS.AlignVertEnum.Center '居中

Dim  Sheet As XLS.Sheet = Book.Sheets(0)
Sheet.Rows.Frozen = 2

Dim nms() As String = dcs.ToArray()
Dim enNms() As String = enNames.ToArray()
Dim width() As Integer = widths.ToArray()

For i As Integer = 0 To nms.Length - 1
    Sheet(0, i).Value = enNms(i) '英文字段表头
    Sheet(1, i).Value = nms(i) ' 中文字段表头
    Sheet.Cols(i).Width = width(i)
Next
Sheet.Rows(0).Style = StyleHead
Sheet.Rows(1).Style = StyleHead

For r As Integer = 0 To dt.DataRows.Count - 1
    For i As Integer = 0 To nms.Length - 1
        If NOT dt.Datarows(r).IsNull(nms(i)) Then
            Sheet(r + 2, i).Value = dt.Datarows(r)(nms(i))
        End If
    Next
    sheet.Rows(r+2).Style = Style
Next

book.PreBuild = False  '非报表模请将PreBuild  属性设置为False
e.WriteBook(book, tblName & "_" & Format(Date.Now, "yyyyMMdd") & ".xlsx",False)   '  .xlsx 会导致文件打不开
[此贴子已经被作者于2022/4/13 11:09:27编辑过]

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/13 11:45:00 [只看该作者]

是有问题,已反馈。先使用.xls文件吧

 回到顶部