ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

VBA实例:高考分数投档指数分析(数据准备:计算线差;计算省排名)

2020-09-03 07:00:42  阅读:336  来源: 互联网

标签:VBA End Sub rng years 线差 MsgBox 投档 院校


'当前页:ThisWorkbook.Worksheets("院校投档分数线")
Sub 计算线差()
  Dim I%, years$
  Dim rng As range
  years = InputBox("请输入处理年份:", "年份", "")
  If years <= ThisWorkbook.Worksheets("备选院校").[B2] Then
    [j1] = "处理条数:"
    I = 1
    For Each rng In ThisWorkbook.Worksheets("院校投档分数线").range("B2", [B2].End(xlDown))
        If rng = "" Then
           Exit For
        ElseIf rng = years Then
            If rng(1, 7) <> "" And I = 1 Then
                MsgBox "数据已生成!"
                Exit Sub
            End If
            I = 0
           If rng(1, 2) = "本科一批院校A段" Or rng(1, 2) = "本科二批院校A段" Then
                rng(1, 7) = 查排名(Int(rng(1, 6)), rng, rng(1, 4))
                rng(1, 8) = Int(rng(1, 6) - 查投档线(rng(1, 2), rng, rng(1, 4)))
           End If
               [k1] = rng.Row
               [l1] = rng(1, 5)
      End If
    Next rng
    MsgBox "处理完毕!"
    Else
    MsgBox "请输入正确年份!"
    End If
End Sub

'当前页:ThisWorkbook.Worksheets("院校分专业入取线")
Sub 计算排名()
  Dim I%, years$
  Dim rng As range
  years = InputBox("请输入处理年份:", "年份", "")
  If years <= ThisWorkbook.Worksheets("备选院校").[B2] Then
   [N1] = "处理条数:"
    I = 1
    For Each rng In ThisWorkbook.Worksheets("院校分专业入取线").range("B2", [B2].End(xlDown))
        If rng = "" Then
           Exit For
        ElseIf rng = years Then
            If rng(1, 9) <> "" And I = 1 Then
                MsgBox "数据已生成!"
                Exit Sub
            End If
            I = 0
           If rng(1, 3) = "本科一批院校A段" Or rng(1, 3) = "本科二批院校A段" Then
                fc = 查投档线(rng(1, 3), rng, rng(1, 2))
                rng(1, 9) = 查排名(rng(1, 7), rng, rng(1, 2))
                rng(1, 10) = 查排名(rng(1, 8), rng, rng(1, 2))
                rng(1, 11) = rng(1, 7) - fc
                rng(1, 12) = rng(1, 8) - fc
           End If
        End If
        [O1] = rng.Row
        [P1] = rng(1, 5)
    Next rng
    MsgBox "处理完毕!"
    Else
    MsgBox "请输入正确年份!"
    End If
End Sub

标签:VBA,End,Sub,rng,years,线差,MsgBox,投档,院校
来源: https://blog.51cto.com/12815848/2527927

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有