Foxtable(狐表)用户栏目专家坐堂 → 课程表导入


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

主题:课程表导入

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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
课程表导入  发帖心情 Post By:2016/9/21 15:35:00 [显示全部帖子]

一、如何将课程表.xls的内容,星期,节次,科目导入到教务管理系统中课程表星期,节次,科目,这样可不再逐行录入。
二、将教务管理系统中的课程表做出一个像课程表.xls的结构的课程表,方便常握各班课程表。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:教务管理系统.rar

想法有点怪异,请指导,谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:课程表.xls


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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/21 16:12:00 [显示全部帖子]

课程表改成这种,在sheet1中是课程表明细,sheet2是任课教师,请问窗口中设计一个方案直接将xls中的,班级,星期,节次,科目,任课教师导入表,再根据课程表记录生成班级二维课程表,请各位高手指点,谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:课程表.xls


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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/21 17:30:00 [显示全部帖子]

改不出来,请指教,谢谢

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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/21 20:04:00 [显示全部帖子]

Dim Book As New XLS.Book("c:\test\课程表.xls")
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Tables("课程表").StopRedraw()
Dim nms() As String = {"班级","星期","节次","科目"}
For n As Integer = 1 To Sheet.Rows.Count -1 
    Dim bh As String = sheet(n,0).Text 
    Dim dr As DataRow = DataTables("课程表").Find("班级 = '" & bh & "'") 
    If dr Is Nothing Then '如果不存在同编号的订单
        dr =  DataTables("课程表").AddNew()
    End If
    For m As Integer = 0 To nms.Length - 1
        dr(nms(m)) = Sheet(n,m).Value
    Next
Next
Tables("课程表").ResumeRedraw()       改不对,没达到目的.请帮改一下,谢谢

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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/22 8:34:00 [显示全部帖子]

Dim dlg As new OpenFileDialog
dlg.Filter = "Excel|*.xls;*.xlsx"
If dlg.ShowDialog = DialogResult.OK Then
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("课程表").StopRedraw()
    For n As Integer = 2 To Sheet.Rows.Count -1
        Dim bj As String =  Sheet(n,2).Value
        Dim jc As String =  Sheet(n,3).Value
        Dim mc As String = sheet(n,0).value
        Dim dm As String = sheet(n,1).value
        For m As Integer = 4 To 8
            Dim dr As DataRow = DataTables("课程表").Find("班级 = '" & bj & "'and 星期 = '" & cstr(m-3) & "' and 节次 = '" & jc &  "'")
            If dr Is Nothing Then '如果不存在同编号的订单
                dr =  DataTables("课程表").AddNew()
            End If
            dr("学校名称") = mc
            dr("学校代码") = dm
            dr("班级") = bj
            dr("节次") = jc
            dr("星期") = cstr(m-3)
            dr("科目") = Sheet(n,m).Value
        Next
    Next
    Tables("课程表").ResumeRedraw()
End If

老师,非常谢谢,通过你的指导我学到了很多,我做了个增加,但一至还有个搞不清楚,就是把课程表中的sheet(1)中教师任课表用班级对应导入课程表中的任课教师字段。请指导教,谢谢!!

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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/22 10:25:00 [显示全部帖子]

Dim dlg As new OpenFileDialog
dlg.Filter = "Excel|*.xls;*.xlsx"
If dlg.ShowDialog = DialogResult.OK Then
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables("课程表").StopRedraw()
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim bj As String =  Sheet(n,2).Value
        Dim jc As String =  Sheet(n,3).Value
        Dim mc As String = sheet(n,0).value
        Dim dm As String = sheet(n,1).value
        For m As Integer = 4 To 8
            Dim dr As DataRow = DataTables("课程表").Find("班级 = '" & bj & "'and 星期 = '" & cstr(m-3) & "' and 节次 = '" & jc &  "'")
            If dr Is Nothing Then '如果不存在同编号的订单
                dr =  DataTables("课程表").AddNew()
            End If
            dr("学校名称") = mc
            dr("学校代码") = dm
            dr("班级") = bj
            dr("节次") = jc
            dr("星期") = cstr(m-3)
            dr("科目") = Sheet(n,m).Value
        Next
    Next
    Dim kms() As String = {"语文","数学","英语","政治","历史","生物","地理","物理","化学","音乐","美术","体育","班会","微机"} '其它科目自己添加
    Sheet = Book.Sheets(1)
    Dim drs As List(of DataRow)
    For n As Integer = 3 To Sheet.Rows.Count -1
        Dim bj As String =  Sheet(n,0).Value
        
        For m As Integer = 0 To kms.Length - 1
            If Sheet(n,m+1).Value > "" Then
                drs = DataTables("课程表").Select("班级 = '" & bj & "' and 科目 = '" & kms(m) & "'")
                For Each r As DataRow In drs
                    r("任课教师") = Sheet(n,m+2).Value
                Next
            End If
        Next
    Next
    Tables("课程表").ResumeRedraw()
End If    
老师,现在调得差不多了,但不晓得什么原因,其他教师能导入,但物理,体育教师导不进,请指导,谢谢

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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/22 10:47:00 [显示全部帖子]

没有合并单元格和隐藏,找不来问题,请帮再看下,谢谢


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


加好友 发短信
等级:八尾狐 帖子:1942 积分:14943 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/9/22 11:02:00 [显示全部帖子]

查了没有合并单元格也没隐藏列,就是不得行呢,请再帮看一下


 回到顶部