码迷,mamicode.com
首页 > 编程语言 > 详细

VBA 实现学校上课教员一学期中所有上课时间,在一页中通过背景底色反应出来

时间:2016-07-24 13:26:06      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:

需求:学校一学期的所有课程表,每个教员都有可能上好几门课,但给一个教员调课时需要查找所调课时间位置有没有此教员上其它的课 相冲突,手动查找很不方便,这里想通过一个表中位置显示出同一教员在所有课表中出现上课的时间位置,实现如下,这个程序还是很好解决了此问题。

 

Sub test()
    
   Set curws = ActiveSheet 定义活动表
    curws.Cells.ClearFormats 清除表中的格式
     user = Range("af2") 取上课的人名
     If IsEmpty(user) Then
        MsgBox "af2单元格添写人名"
        Exit Sub
     End If
    
    循环所有表
    For Each ws In Worksheets
       Set lastRg = ws.Range("a65536").End(xlUp)
        选择任课教员的和上课的简称单元格的范围
        lastrow = lastRg.Row 取最后一行
        startrow = lastRg.End(xlUp).Row 开始行
      
        For i = startrow To lastrow - 1
            If ws.Range("n" & i) = user Then
                找到教员就取对应的上课简称
               v = ws.Range("g" & i).Value
              从课程表上课范围中循环
               For Each rg In ws.Range("c7:ad" & startrow - 2)
                   
                    If rg.Value = v Then
                      从对应的绝对位置在当前活动表中对应单元格添加底色
                        curws.Range(rg.Address).Interior.ColorIndex = 3
                    End If
               Next
            End If
        Next
        
    Next
End Sub

 

VBA 实现学校上课教员一学期中所有上课时间,在一页中通过背景底色反应出来

标签:

原文地址:http://www.cnblogs.com/lunawzh/p/5700537.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!