Foxtable(狐表)用户栏目专家坐堂 → Excel报表


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

主题:Excel报表

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
Excel报表  发帖心情 Post By:2018/9/22 10:12:00 [只看该作者]

以下代码黄色部分提示错误,应该怎么修改?

Dim Book As New XLS.Book '定义一个Excel工作簿

Dim Ws As MSExcel.WorkSheet = Book.WorkSheets.Add(After:=Wb.WorkSheets("同期对比"))
Ws.Name = "本期数据"


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


加好友 发短信
等级:超级版主 帖子:112401 积分:572273 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/22 10:20:00 [只看该作者]

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets.Add(After:=Wb.WorkSheets("同期对比"))
Ws.Name = "本期数据"

XLS.Book不是vba的用法,不要混用
[此贴子已经被作者于2018/9/22 10:19:53编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2018/9/22 10:45:00 [只看该作者]

Dim shrs As List (of String) = dt.DataTable.GetValues("收货人","收货人 is not null")

Dim Ws As XLS.Sheet = Book.Sheets.Add("" & shrs(n) & "")

上述黄色代码怎么能够排除这些非法字符

上述代码提示如下

.NET Framework 版本:2.0.50727.8935
Foxtable 版本:2018.9.9.1
错误所在事件:自定义函数DaoChuHuoYunQingDan
详细错误信息:
调用的目标发生了异常。
非法的表单名称(必须是1到31个字符之内并且不能包含下列字符:: * [ ] / \ or ?)。


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


加好友 发短信
等级:超级版主 帖子:112401 积分:572273 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/22 10:59:00 [只看该作者]

n不能大于集合的数量-1

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2018/9/24 16:29:00 [只看该作者]

Dim Book As New XLS.Book("c:\reports\test.xls") '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
Dim Style As XLS.Style = Book.NewStyle() '定义新样式
Style.ForeColor = Color.Red '设置样式的字体颜色
Sheet(0,0).Style = Style
Sheet(0,0).Value = "邮件"
Sheet(0,0).Hyperlink = "Mailto:zjtdr@21cn.net"
Sheet(1,0).Formula = "=1+3"
Book.Save("c:\reports\test.xls")
Dim Proc As New Process
Proc.File = "c:\reports\test.xls"
Proc.Start()
上述代码只能对没有打开的表,填写内容设置格式,假如上述表已经打开,怎么通过代码填写数据?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/25 9:23:00 [只看该作者]

以下是引用kaituozhe在2018/9/24 16:29:00的发言:
上述代码只能对没有打开的表,填写内容设置格式,假如上述表已经打开,怎么通过代码填写数据?

 

已经打开的表格,无法操控。你可以先关闭,再填写数据,再打开

 

http://www.foxtable.com/webhelp/scr/2126.htm

 

http://www.foxtable.com/webhelp/scr/2713.htm

 


 回到顶部