以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于使用控件名称命名文件问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=90475)

--  作者:沦落深蓝
--  发布时间: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) \'保存工作簿

 

 

 


--  作者:有点蓝
--  发布时间:2016/9/13 21:58:00
--  
Dim fl As String = ProjectPath & dh.Value & ".xls" 
--  作者:沦落深蓝
--  发布时间: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
--  发布时间:2016/9/14 13:15:00
--  
 filesys 好好学习这一章

--  作者:沦落深蓝
--  发布时间:2016/9/14 13:40:00
--  

请问:

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

  FileSys.CreateDirectory("C:\\MyFolder")

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

 

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


--  作者:有点蓝
--  发布时间:2016/9/14 14:42:00
--  
FileSys.CreateDirectory("C:\\" & format(d1,"yyyyMMdd"))
.
FileSys.CreateDirectory("C:\\" & d1.year"))
[此贴子已经被作者于2016/9/14 14:42:49编辑过]

--  作者:有点蓝
--  发布时间:2016/9/14 14:43:00
--  
Dim fl As String = ProjectPath  & d1.year & "\\" & dh.value & ”.xls"
--  作者:沦落深蓝
--  发布时间: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" )

 

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


--  作者:有点蓝
--  发布时间:2016/9/14 22:45:00
--  
没有问题的,msgbox(ProjectPath  & d1.year & "\\" & dh.value & "机械管理使用情况表.xls" )弹出看看

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


--  作者:沦落深蓝
--  发布时间: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()

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