zoukankan      html  css  js  c++  java
  • VBA 实现学校上课教员一学期中所有上课时间,在一页中通过背景底色反应出来

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

    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
  • 相关阅读:
    语言相关
    一道简单DP题
    一道概率题
    Android CrashHandler
    一道简单数学题
    面试中遇到的随机题目
    VMWare 无损扩展磁盘大小
    Android 源码编译记录
    Android handler 内存泄露分析及解决方法
    Android 反编译
  • 原文地址:https://www.cnblogs.com/lunawzh/p/5700537.html
Copyright © 2011-2022 走看看