以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  执行外部程序  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=139885)

--  作者:漂亮美眉vszh
--  发布时间:2019/8/24 10:05:00
--  执行外部程序
老师,执行没有拼接的文件时正常(地址是拼接后下面语
图片点击可在新窗口打开查看此主题相关图片如下:456.png
图片点击可在新窗口打开查看
句Output.Show返回来的,不是自己输入,所以不存在打错情况);但动态接拼了,就报错。
--  作者:有点蓝
--  发布时间:2019/8/24 10:41:00
--  
第3到第4行是干嘛用的,为什么要加一个换行符?

另外需要解决问题请直接贴出代码,而不是截图,这样别人没有办法改。我也没有兴趣一个个字符去敲这些代码

--  作者:漂亮美眉vszh
--  发布时间:2019/8/24 11:22:00
--  
1.在主表的列内上传一堆文件资料,在子表列内勾选在主表列内的所上传的文件列表(可先一个文件或多个文件)。3-4行判断子表如果勾选的是一个文件,就在后面加换行符;勾选的是多个文件的话,文件名与文件名之件本来就已经加入了换行符,然后按换行符拆分单元格内所上传的文件名。得出一个个文件名后,逐步打开。
2.贴出代码
\'Dim Proc As New Process
\'Proc.File = "\\\\192.168.3.10\\public\\UploadData\\FMEA\\0000201908-0003\\Certification\\检查表.xls"
\'Proc.Verb = "OpenAsReadOnly"
\'\'Proc.Verb = "Open"
\'Proc.Start()
\'
Dim st As String = Tables("FmeaChild").current("Certification")
If st.Contains(vblf) = False Then
    st = st & vblf
End If
Dim Proc As New Process
Dim vals() As String = st.Split(vblf)
For Each va As String In vals
    If va <> "" Then
       va = va.Trim(vblf)
        Output.Show(CF_Address & "FMEA\\" & Tables("MainTable").current("Main_ID") & "\\Certification\\" & va)
        Proc.File = CF_Address & "FMEA\\" & Tables("MainTable").current("Main_ID") & "\\Certification\\" & va
       \' Proc.Verb = "OpenAsReadOnly"
Proc.Verb = "Open"
        Proc.Start()
    End If
Next




--  作者:漂亮美眉vszh
--  发布时间:2019/8/24 11:25:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:112.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2019/8/24 11:36:00
--  
单文件不需要添加换行符也可以通过换行符进行split的,完全是画蛇添足。

Dim st As String = Tables("FmeaChild").current("Certification")
Dim Proc As New Process
Dim vals() As String = st.replace(vbcr,"").Split(vblf)
For Each va As String In vals
    If va <> "" Then
        Output.Show(CF_Address & "FMEA\\" & Tables("MainTable").current("Main_ID") & "\\Certification\\" & va)
        Proc.File = CF_Address & "FMEA\\" & Tables("MainTable").current("Main_ID") & "\\Certification\\" & va
       \' Proc.Verb = "OpenAsReadOnly"
Proc.Verb = "Open"
        Proc.Start()
    End If
Next