ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: jx928867128

[求助] 教师只能监考本班教室问题)

 关闭 [复制链接]

TA的精华主题

TA的得分主题

发表于 2024-6-11 14:47 | 显示全部楼层
micch 发表于 2024-6-11 14:39
学校出了薪水就是让人干活的,结果还要学校掏钱给员工开发工具,来给员工省事,学校不乐意。合着我花8000雇 ...

这个人是白嫖100多段代码,等于大佬被他白嫖,工资他领了。实在是没有天理!!!

TA的精华主题

TA的得分主题

发表于 2024-6-11 14:55 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
目前上传的附件中,监考教师总数是120人,
按你目前设定的考试情况,科目数4,考场数20,每个考试监考人数1人,
那么,及时每个教师只监考一场,都只是要80个监考教师就足够了,
所以,想帮你也我从下手了

TA的精华主题

TA的得分主题

发表于 2024-6-11 14:58 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我也是搞教务工作的的,我觉得,教师监考安排,作重要的是考虑场次的均衡,其次再考虑不监考某科目,某考场,或者必须监考某科目或者某考场,
当然,个人拙见,仅供参考,不喜勿喷

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-6-11 15:28 | 显示全部楼层
cidanji 发表于 2024-6-11 14:08
不花个人钱的话,对方收费不超500 能提供收据就能走公账了
国家税务局规定,付个人500元以下零星支出 无需 ...

如果有这个规定的话, 那说明学校以开票公对公为理由不想出钱的

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-6-11 15:31 | 显示全部楼层
本帖最后由 jx928867128 于 2024-6-11 15:37 编辑
10.png 不规则结构 发表于 2024-6-11 14:47
这个人是白嫖100多段代码,等于大佬被他白嫖,工资他领了。实在是没有天理!!!

你继续牛逼,牛逼到管理员继续封贴,懒得理你。

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-6-11 15:44 | 显示全部楼层
dambcer 发表于 2024-6-11 12:44
这个不值钱就很伤人吧

Public p, LastSJH, LastSJL, LastTJH, jgh, t, sc As Integer
Public sj, tj As Variant
Sub dd()
  On Error GoTo Err
  Application.StatusBar = "正在处理,请稍后……"
  Application.ScreenUpdating = False
  Application.DisplayAlerts = False
  Application.EnableCancelKey = xlDisabled
  Sheets("结果").Cells.Clear
  LastSJH = Sheets("数据").Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row - 1
  LastSJL = Sheets("数据").Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Column - 2
  LastTJH = Sheets("条件").Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row - 1
  sc = Sheets("条件").Cells(2, 5).Value
  Set sj = Range(Worksheets("数据").Cells(2, 3), Worksheets("数据").Cells(LastSJH + 1, LastSJL + 2))
  tj = Range(Worksheets("条件").Cells(2, 1), Worksheets("条件").Cells(LastTJH + 1, 4))
  
  Sheets("条件").Select
  For z = 1 To LastTJH
      For Each c In sj
          If c.Value = tj(z, 1) Then js = js + 1
      Next
       Cells(z + 1, 2).Value = js
       js = 0
  Next
  Cells(2, 2).Select
  Range(Cells(1, 1), Cells(LastTJH + 1, 4)).Sort Key1:=Cells(2, 2), Order1:=xlDescending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
  t = Timer()
  Do
  Application.ScreenUpdating = False
  Sheets("数据").Select
  Cells(2, 1).Select
  Range(Cells(1, 1), Cells(LastSJH + 1, LastSJL + 2)).Sort Key1:=Cells(2, 1), Order1:=xlDescending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
  Application.ScreenUpdating = True
  For xh3 = 1 To LastSJH
  For xh4 = 1 To LastSJL
  
  sj = Range(Worksheets("数据").Cells(2, 3), Worksheets("数据").Cells(LastSJH + 1, LastSJL + 2))
  tj = Range(Worksheets("条件").Cells(2, 1), Worksheets("条件").Cells(LastTJH + 1, 4))
    For h = 1 To LastSJH
         For l = 1 To LastSJL
            For z = 1 To LastTJH
                If sj(h, l) = tj(z, 1) Then
                    hc = sj(h, l)
                    sj(h, l) = sj(h, tj(z, 4))
                    sj(h, tj(z, 4)) = hc
                    Exit For
                End If
            Next
         Next
    Next
   

        For h = 1 To LastSJH
        If xh3 + h - 1 <= LastSJH Then jgh = xh3 + h - 1 Else jgh = xh3 + h - 1 - LastSJH
        For l = xh4 To LastSJL
            js = 0
            For z = 1 To LastTJH
                If sj(jgh, l) = tj(z, 1) Then
                   For xh = 1 To LastSJH
                       If sj(xh, l) = tj(z, 1) Then js = js + 1
                   Next
                   tjgs = tj(z, 3)
                   If js > tjgs Then
                      For l1 = 1 To LastSJL
                        If Rnd() > 0.8 Then DoEvents

                          If sj(jgh, l) <> sj(jgh, l1) Then
                             js1 = 0
                             js2 = 0
                             For z1 = 1 To LastTJH
                                 If sj(jgh, l1) = tj(z1, 1) Then
                                    tjgs1 = tj(z1, 3)
                                    Exit For
                                 End If
                             Next
                             For xh = 1 To LastSJH
                                 If sj(xh, l) = sj(jgh, l1) Then js1 = js1 + 1
                             Next
                             For xh = 1 To LastSJH
                                 If sj(xh, l1) = sj(jgh, l) Then js2 = js2 + 1
                             Next
                             If js1 < tjgs1 And js2 < tjgs Then
                                hc = sj(jgh, l1)
                                sj(jgh, l1) = sj(jgh, l)
                                sj(jgh, l) = hc
                                Call pd
                                If p = 0 Then GoTo z:
                                Exit For
                             End If
                         End If
                      Next
                    End If
                    Exit For
                 End If
            Next
        Next
        Next
    Next
    Next
    Loop Until Timer() - t > sc * 60
z:
   Application.ScreenUpdating = False
   If p = 0 Then MsgBox ("True") Else MsgBox ("False")
   Range(Worksheets("数据").Cells(1, 2), Worksheets("数据").Cells(LastSJH + 1, LastSJL + 2)).Copy Sheets("结果").Cells(1, 1).Resize(LastSJH + 1, LastSJL + 2)
   Sheets("结果").Cells(2, 2).Resize(LastSJH, LastSJL) = sj
   Sheets("数据").Select
   Cells(2, 2).Select
   Range(Cells(1, 1), Cells(LastSJH + 1, LastSJL + 2)).Sort Key1:=Cells(2, 2), Order1:=1, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
   Sheets("结果").Select
   Cells(2, 1).Select
   Range(Cells(1, 1), Cells(LastSJH + 1, LastSJL + 2)).Sort Key1:=Cells(2, 1), Order1:=1, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        SortMethod:=xlPinYin, DataOption1:=xlSortNormal
Err:
  Application.ScreenUpdating = True
  Application.DisplayAlerts = True
  Application.EnableCancelKey = xlErrorHandler
  Application.StatusBar = False
End Sub
Function pd()
p = 0
For z = 1 To LastTJH
     For l = 1 To LastSJL
        js = 0
        For h = 1 To LastSJH
            If sj(h, l) = tj(z, 1) Then js = js + 1
            If js > tj(z, 3) Then
               p = 1
               Exit For
            End If
        Next
    Next
  Next
End Function
这是当时论坛里一位代写的,自费200元的代码,结果是一次性的,只对当时的数据有用,但变换数据就用不了,大神你觉得值多少钱?

TA的精华主题

TA的得分主题

发表于 2024-6-11 15:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
jx928867128 发表于 2024-6-11 11:53
排课那个贴子在有坛友提出需要收费时已经把学校经费支付要求表达清楚了

好的,我明白你的意思了。你继续求助吧。大家都难。

TA的精华主题

TA的得分主题

发表于 2024-6-11 15:51 | 显示全部楼层
wang-way 发表于 2024-6-11 11:13
我已经做好了  但是他说不值钱

我仔细看了下这个表,做起来还是很考验人的!首先可能1个老师任教同一班级几门课或者不同班级,其次是多人监考的问题,还有每个老师监考次数平衡的问题!    这问题低于200就不要做了!尊重下自己学的知识!!!别人说不值钱,咱们一定要把自己的心血当回事!!!

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-6-11 15:52 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
3190496160 发表于 2024-6-11 14:58
我也是搞教务工作的的,我觉得,教师监考安排,作重要的是考虑场次的均衡,其次再考虑不监考某科目,某考场 ...

谢谢朱老师的关注,昨天的贴子给管理员封后,觉得不太敢发求帮忙的贴子了,为什么要封贴啊,不是发言要审核吗?明明是那位坛友先进行言语攻击,为什么要通过他的发言啊,最后把贴子封了,问题得不到解决,这不就是支持他的观点吗?

TA的精华主题

TA的得分主题

发表于 2024-6-11 15:56 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
ykcbf1100 发表于 2024-6-11 15:46
好的,我明白你的意思了。你继续求助吧。大家都难。

3000多字的代码200他觉得贵。开始心疼起论坛大佬!!!是什么样的人一贯白嫖,却有底气说3000多字的代码200块贵?希望大佬以后不要喂养白眼狼了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-21 17:57 , Processed in 0.046199 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表