以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  进入了死循环  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=169327)

--  作者:13796361423
--  发布时间:2021/6/12 8:18:00
--  进入了死循环
Tables("四年级").Filter = ""
Tables("四年级").Sort = ""
DataTables("四年级").ReplaceFor("是否有照片","False","是否有照片=\'True\'")
For Each r As Row In Tables("四年级").Rows
    Dim m As String = projectpath & "Attachments\\" & r("相片")
    If FileSys.FileExists(m)=False Then
        r("是否有照片")= True
    End If
Next
For Each r As Row In Tables("四年级").Rows
    Dim n As String = projectpath & "Attachments\\" & r("相片")
    If FileSys.FileExists(n)=True Then
        Messagebox.Show(n & "有相片!","提示")
    Else
        Tables("四年级").Filter = "[是否有照片]=true"
        Dim t As Table = Tables("四年级")
        t.Select(0,0,t.rows.count-1,t.cols.count-1)
        Dim Book As New XLS.Book(ProjectPath &  "Attachments\\网络.xls")
        Dim fl As String =  ProjectPath &  "Reports\\网络.xls"
        Book.Build() \'生成细节区
        Book.Save(fl) \'保存工作簿
        Dim Proc As New Process \'打开工作簿
        Proc.File = fl
        Proc.Start()
    End If
Next


我这个名令进入了死循环, 我想是  如果有照片的文件就提示“有相片”, 没有的话就导出无相片学生的报表


--  作者:有点蓝
--  发布时间:2021/6/12 9:24:00
--  
Tables("四年级").Filter = ""
Tables("四年级").Sort = ""
DataTables("四年级").ReplaceFor("是否有照片","False","是否有照片=\'True\'")
For Each r As Row In Tables("四年级").Rows
    Dim m As String = projectpath & "Attachments\\" & r("相片")
    If FileSys.FileExists(m)=False Then
        r("是否有照片")= True
    End If
Next
      Tables("四年级").Filter = "[是否有照片]=true"
        Dim t As Table = Tables("四年级")
        t.Select(0,0,t.rows.count-1,t.cols.count-1)
        Dim Book As New XLS.Book(ProjectPath &  "Attachments\\网络.xls")
        Dim fl As String =  ProjectPath &  "Reports\\网络.xls"
        Book.Build() \'生成细节区
        Book.Save(fl) \'保存工作簿
        Dim Proc As New Process \'打开工作簿
        Proc.File = fl
        Proc.Start()

--  作者:13796361423
--  发布时间:2021/6/12 9:46:00
--  还是不通

图片点击可在新窗口打开查看此主题相关图片如下:400.jpg
图片点击可在新窗口打开查看
Tables("四年级").Filter = ""
Tables("四年级").Sort = ""
DataTables("四年级").ReplaceFor("是否有照片","False","是否有照片=\'True\'")
For Each r As Row In Tables("四年级").Rows
    Dim m As String = projectpath & "Attachments\\" & r("相片")
    If FileSys.FileExists(m)=False Then
        r("是否有照片")= True
    End If
Next
      Tables("四年级").Filter = "[是否有照片]=true and [代码]=\'01\'"
        Dim t As Table = Tables("四年级")
        t.Select(0,0,t.rows.count-1,t.cols.count-1)
        Dim Book As New XLS.Book(ProjectPath &  "Attachments\\网络.xls")
        Dim fl As String =  ProjectPath &  "Reports\\网络.xls"
        Book.Build() \'生成细节区
        Book.Save(fl) \'保存工作簿
        Dim Proc As New Process \'打开工作簿
        Proc.File = fl
        Proc.Start()




如果存在没有照片的班级(代码
图片点击可在新窗口打开查看此主题相关图片如下:2345截图20210612094037.png
图片点击可在新窗口打开查看
),可以出来报表, 如果班级(代码)都照相了就会出错,能不能让都照相的班级出一个提示, 该班级(代码)都照完相了



--  作者:有点蓝
--  发布时间:2021/6/12 10:13:00
--  
……
Next
      Tables("四年级").Filter = "[是否有照片]=true"
if t.rows.count = 0 then return
        Dim t As Table = Tables("四年级")
        t.Select(0,0,t.rows.count-1,t.cols.count-1)
        Dim Book As New XLS.Book(ProjectPath &  "Attachments\\网络.xls")
……

--  作者:13796361423
--  发布时间:2021/6/12 11:44:00
--  请问
Tables("四年级").Filter = ""
Tables("四年级").Sort = ""
DataTables("四年级").ReplaceFor("是否有照片","False","是否有照片=\'True\'")
For Each r As Row In Tables("四年级").Rows
    Dim m As String = projectpath & "Attachments\\" & r("相片")
    If FileSys.FileExists(m)=False Then
        r("是否有照片")= True
    End If
Next
      Tables("四年级").Filter = "[是否有照片]=true and [代码]=\'01\'"
If t.rows.count = 0 Then Return
        Dim t As Table = Tables("四年级")
        t.Select(0,0,t.rows.count-1,t.cols.count-1)
        Dim Book As New XLS.Book(ProjectPath &  "Attachments\\网络.xls")
        Dim fl As String =  ProjectPath &  "Reports\\网络.xls"
        Book.Build() \'生成细节区
        Book.Save(fl) \'保存工作簿
        Dim Proc As New Process \'打开工作簿
        Proc.File = fl
        Proc.Start()
图片点击可在新窗口打开查看此主题相关图片如下:3.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2021/6/12 11:46:00
--  
换下位置

        Dim t As Table = Tables("四年级")
If t.rows.count = 0 Then Return

基本的代码错误判断能力要学会,总不能别人写的代码,就只能等着别人来改吧


--  作者:13796361423
--  发布时间:2021/6/12 13:01:00
--  位置换了,还是不能通
位置换了,还是不能通

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


--  作者:有点蓝
--  发布时间:2021/6/12 14:31:00
--  
如果是在命令窗口执行,随便返回什么内容:If t.rows.count = 0 Then Return ""

在事件里执行没有问题的