Foxtable(狐表)用户栏目专家坐堂 → [求助]关于使用控件名称命名文件问题


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

主题:[求助]关于使用控件名称命名文件问题

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


加好友 发短信
等级:幼狐 帖子:170 积分:1195 威望:0 精华:0 注册:2016/2/21 18:26:00
[求助]关于使用控件名称命名文件问题  发帖心情 Post By:2016/9/13 21:56:00 [只看该作者]

想要把控件textbox: "TB代号"  的值作为生成新excel表格的名称,该如何做,字符如何连接,恕我愚钝,请老师指导

 

Dim Book As New XLS.Book(ProjectPath & "Attachments\机械管理使用情况表.xls")   ’这是模板
Dim dh As WinForm.TextBox = e.Form.Controls("TB代号")
Dim fl As String = ProjectPath & "                机械管理使用情况表.xls"      ’请问这里该怎么写才能把textbox的value作为新文件的名字??
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿

 

 

 


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


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

Dim fl As String = ProjectPath & dh.Value & ".xls" 

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


加好友 发短信
等级:幼狐 帖子:170 积分:1195 威望:0 精华:0 注册:2016/2/21 18:26:00
  发帖心情 Post By:2016/9/14 12:36:00 [只看该作者]

Dim fl As String = ProjectPath & dh.value & ".xls"

 

如何保存文件时再添加一个以年份为名字的文件夹呢,怎么加都不对,请老师指正

Dim d1 As Date = Date.Today
Dim fl As String = ProjectPath  & d1.year & \ & dh.value & ”.xls"

 


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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57596 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2016/9/14 13:15:00 [只看该作者]

 filesys 好好学习这一章

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


加好友 发短信
等级:幼狐 帖子:170 积分:1195 威望:0 精华:0 注册:2016/2/21 18:26:00
  发帖心情 Post By:2016/9/14 13:40:00 [只看该作者]

请问:

Dim d1 As Date = Date.Today
1、如何创建以当前年份为名的的文件价,我看帮助都是直接输入路径所以不知道怎么改;

  FileSys.CreateDirectory("C:\MyFolder")

2、如何把文件放进该文件夹里,由于是动态的 ”d1.year” 每年不一样,所以路径该怎么表示?

 

请老师们教一下我这个笨小孩


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


加好友 发短信
等级:超级版主 帖子:107896 积分:548849 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/14 14:42:00 [只看该作者]

FileSys.CreateDirectory("C:\" & format(d1,"yyyyMMdd"))
.
FileSys.CreateDirectory("C:\" & d1.year"))
[此贴子已经被作者于2016/9/14 14:42:49编辑过]

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


加好友 发短信
等级:超级版主 帖子:107896 积分:548849 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/14 14:43:00 [只看该作者]

Dim fl As String = ProjectPath  & d1.year & "\" & dh.value & ”.xls"

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


加好友 发短信
等级:幼狐 帖子:170 积分:1195 威望:0 精华:0 注册:2016/2/21 18:26:00
  发帖心情 Post By:2016/9/14 22:39:00 [只看该作者]

非常感谢老师,就是这个,格式了解不够全面,又涨知识了,还有一点请教一下:

 

Dim dh As WinForm.TextBox = e.Form.Controls("TB代号")
Dim d1 As Date = Date.Today

Dim  Book As New XLS.Book(ProjectPath  & d1.year & "\" & dh.value & "机械管理使用情况表.xls" )

 

在已经生成了该文件后,引用该地址时该表达式似乎有问题,找不到存储位置,在保存后调用该文件夹里文件时地址该怎么写?


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


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

没有问题的,msgbox(ProjectPath  & d1.year & "\" & dh.value & "机械管理使用情况表.xls" )弹出看看

具体在什么地方用,怎么用?


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


加好友 发短信
等级:幼狐 帖子:170 积分:1195 威望:0 精华:0 注册:2016/2/21 18:26:00
  发帖心情 Post By:2016/9/15 14:00:00 [只看该作者]

某窗口的按钮click事件中,首先用此方法生成以年份为名的文件夹存放以代号为名的excel表格:

 

Dim Book As New XLS.Book(ProjectPath & "Attachments\机械管理使用情况表.xls")
Dim dh As WinForm.TextBox = e.Form.Controls("TB代号")
Dim d1 As Date = Date.Today
Dim fl As String = ProjectPath & d1.year & "\" & dh.value & "机械管理使用情况表.xls"
Book.Build() '生成细节区
Book.Save(fl) '保存工作簿

 

再次打开窗口时afterload事件,希望窗口中的table能读取该地址的excel表格:

 

Dim dh As WinForm.TextBox = e.Form.Controls("TB代号")
Dim d1 As Date = Date.Today

Dim  Book As New XLS.Book(ProjectPath  & d1.year & "\" & dh.value & "机械管理使用情况表.xls" )  

 

’原本直接引用某表地址时可运行,改为该代码后就出现:

.NET Framework 版本:2.0.50727.7905
Foxtable 版本:2016.7.29.1
错误所在事件:窗口,机械管理记录导入窗口,AfterLoad
详细错误信息:
打开存储文件失败。


Dim  Sheet As XLS.Sheet = Book.Sheets("机械使用情况表")

Tables("机械使用情况表").StopRedraw()
'注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As  String = {"机械使用情况1","机械使用情况2","机械使用情况3","机械使用情况4","机械使用情况5","机械充电情况1","机械充电情况2","机械充电情况3","机械充电情况4","机械充电情况5","保养维护情况1","保养维护情况2","保养维护情况3"}
'注意下面的循环变量从6开始,而不是从0开始,因为Excel表的前6行是标题
For n As Integer = 6 To Sheet.Rows.Count -1
    Dim r As  Row = Tables("机械使用情况表").AddNew()
    For  m As  Integer = 0 To nms.Length - 1
        If Tables("机械使用情况表").Cols(nms(m)).IsBoolean Then
            r(nms(m)) = IIF(Sheet(n,m).Value=1,True ,False)
        Else
            r(nms(m)) = Sheet(n,m).Value
        End If
    Next
Next
Tables("机械使用情况表").ResumeRedraw()

不能这么引用吗???请老师解答图片点击可在新窗口打开查看

 


 回到顶部
总数 18 1 2 下一页