⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sheet2.frm

📁 学生成绩管理系统
💻 FRM
📖 第 1 页 / 共 5 页
字号:
'Private Sub menu_set_Click()
'On Error GoTo ErrHandler
'
'
'
'
'Frm_set.Show
'Exit Sub
'ErrHandler:
'Call net_ERR_center(1, Err.Number, Err.Description, "")
'
'
'
'
'End Sub

Private Sub menu_subclass_Click()

On Error GoTo ErrHandler
Dim i, r As Integer
For i = 0 To 50
 If grid.TextMatrix(i, 0) = "" Then
  r = i

  Exit For

End If
Next

grid.TextMatrix(r - 1, 0) = ""



'On Error GoTo ErrHandler
Exit Sub
ErrHandler:
Call net_ERR_center(1, Err.Number, Err.Description, "")
End Sub

Private Sub menu_send_col_to_course_Click()
On Error GoTo ErrHandler

Dim i, j, k, ync, work, findd          As Integer
Dim colname, ps1, ps2 As String


If grid.ColSel > 0 And grid.RowSel = Crow_max Then

   k = MsgBox("确实要发送《" + grid.TextMatrix(0, grid.ColSel) + "》列到班级工作表么?", vbYesNo)
   If k = vbYes Then

        colname = grid.TextMatrix(0, grid.ColSel)
        sheet1.Show
        sheet1.grid.Row = Crow_max - 1
        sheet1.grid.Col = Ccol_max - 1
        
            findd = 0
            For i = 3 To Ccol_max
            If sheet1.grid.TextMatrix(0, i) = colname Then
            findd = 1
            ps1 = i
            Exit For
            End If
            Next
            
            
            For i = 3 To Ccol_max
            If sheet1.grid.TextMatrix(0, i) = "" Then
            
            ps2 = i
            Exit For
            End If
            Next
            
            work = 0
            If findd = 1 Then
            
               ync = MsgBox("在班级工作表上已经有一个叫《" + colname + "》的列" + vbCrLf + "(是)替换" + vbCrLf + "(否)新建" + vbCrLf + "(取消)放弃本次操作", vbYesNoCancel)
               
               If ync = vbYes Then
                        For i = 0 To Crow_max
  
                            sheet1.grid.TextMatrix(i, ps1) = grid.TextMatrix(i, grid.ColSel)
 
                        Next
                         Text1.Visible = False
                        work = 1
               ElseIf ync = vbNo Then
                      For i = 0 To Crow_max
  
                            sheet1.grid.TextMatrix(i, ps2) = grid.TextMatrix(i, grid.ColSel)
         
                      Next
                       Text1.Visible = False
                      work = 1
               
               
               End If
            
            
            Else
            
            
                      For i = 0 To Crow_max
 
                            sheet1.grid.TextMatrix(i, ps2) = grid.TextMatrix(i, grid.ColSel)

                      Next
                       Text1.Visible = False
                      work = 1
            
            
            
            
            End If
            
             
         
        
          If work = 1 Then
        
           
                 If grid.TextMatrix(0, 0) = "学号" And sheet1.grid.TextMatrix(0, 0) = "" Then
                      For i = 0 To Crow_max
                             sheet1.grid.TextMatrix(i, 0) = grid.TextMatrix(i, 0)
                      Next
                 End If
   
                  If grid.TextMatrix(0, 1) = "班级" And sheet1.grid.TextMatrix(0, 1) = "" Then
                      For i = 0 To Crow_max
                             sheet1.grid.TextMatrix(i, 1) = grid.TextMatrix(i, 1)
                      Next
                 End If
   
                 If grid.TextMatrix(0, 2) = "姓名" And sheet1.grid.TextMatrix(0, 2) = "" Then
                      For i = 0 To Crow_max
                             sheet1.grid.TextMatrix(i, 2) = grid.TextMatrix(i, 2)
                      Next
                 End If
                 Text1.Visible = False
          End If
   
   
   
   
   
   End If

Else

   MsgBox "请先选择一个列!"
End If



Exit Sub
ErrHandler:
Call net_ERR_center(1, Err.Number, Err.Description, "")
End Sub

Private Sub menu_set_system_Click()
Frame_system.Visible = True
End Sub

Private Sub menu_set_youxiujige_Click()
On Error GoTo ErrHandler
If grid.ColSel > 0 And grid.RowSel = Crow_max Then
     
     Label_lie.Caption = grid.TextMatrix(0, grid.ColSel)
     Text_jige.Text = col_jige(grid.ColSel)
     Text_youxiu.Text = col_youxiu(grid.ColSel)
     Frame_jigeyouxiu.Visible = True
Else

     MsgBox "请先选择一个列!"
End If

Exit Sub
ErrHandler:
Call net_ERR_center(1, Err.Number, Err.Description, "")

End Sub

Private Sub menU_work_table_class_Click()
sheet1.Show
sheet1.Caption = App.Title + "   班级工作表"
End Sub

Private Sub menu_work_table_course_Click()
sheet2.Show
sheet2.Caption = App.Title + "   学科工作表"
End Sub

Private Sub menu_work_table_grade_Click()
sheet3.Show
sheet3.Caption = App.Title + "   年级工作表"
End Sub

Private Sub menu_youxiuli_Click()




Dim i, j, send, ps, ps2, findd As Integer
Dim c_youxiu, youxiuli As Double
Dim sno, c_youxiusmmmm As Integer
On Error GoTo ErrHandler



Dim colseled As Boolean


If grid.ColSel > 0 And grid.RowSel = Crow_max Then
   colseled = True
            
End If

findd = 0
For i = 0 To 10
       If Check(i).Value = 1 Then
          findd = 1
       End If
Next i

If findd = 0 And colseled = False Then

   MsgBox "先选择计算项目!"
   
   Exit Sub
End If


send = 0
For i = 1 To Crow_max
  If grid.TextMatrix(i, 0) = "*********" Then
  
  send = i - 1
  'MsgBox send
  Exit For
  End If
Next


If send = 0 Then
 Call MsgBox("在所有学号结束后必需有一个结束标志" + vbCrLf + "*********" + vbCrLf + "解决办法:在此位置点击 编辑/插入行记录结束标志", vbCritical)
  Exit Sub
End If


For i = send + 1 To Crow_max
  If grid.TextMatrix(i, 0) = "" Or grid.TextMatrix(i, 0) = "优秀率" Then
  
  ps = i
  Exit For
  End If
Next
grid.TextMatrix(ps, 0) = "优秀率"
For i = send + 1 To Crow_max
  If grid.TextMatrix(i, 0) = "" Or grid.TextMatrix(i, 0) = "优秀人数" Then
  
  ps2 = i
  Exit For
  End If
Next



grid.TextMatrix(ps2, 0) = "优秀人数"

For i = 0 To 10
       If Check(i).Value = 1 Then
             'MsgBox i

             c_youxiu = col_youxiu(i)
             c_youxiusmmmm = 0
             sno = 0
          
             For j = 1 To send
                 If grid.TextMatrix(j, i) <> "" Then
                     'MsgBox grid.TextMatrix(j, i)
                 
                     If CInt(grid.TextMatrix(j, i)) >= c_youxiu Then
                        c_youxiusmmmm = c_youxiusmmmm + 1
                     End If
                 
                     sno = sno + 1
                 End If
             
             Next j


         If sno > 0 Then
             youxiuli = Int((c_youxiusmmmm / sno) * 10000) / 10000
            
             grid.TextMatrix(ps, i) = youxiuli
             grid.TextMatrix(ps2, i) = c_youxiusmmmm
             
          End If
      End If
Next i

If colseled = True Then
             
'             MsgBox c_youxiu
             i = grid.ColSel
             c_youxiu = col_youxiu(i)
             c_youxiusmmmm = 0
             sno = 0
          
             For j = 1 To send
                 If grid.TextMatrix(j, i) <> "" Then
                     'MsgBox grid.TextMatrix(j, i)
                 
                     If CInt(grid.TextMatrix(j, i)) >= c_youxiu Then
                        c_youxiusmmmm = c_youxiusmmmm + 1
                     End If
                 
                     sno = sno + 1
                 End If
             
             Next j
            If sno > 0 Then
                    youxiuli = Int((c_youxiusmmmm / sno) * 10000) / 10000
                    
                    grid.TextMatrix(ps, i) = youxiuli
                    grid.TextMatrix(ps2, i) = c_youxiusmmmm
              End If
End If


Text1.Visible = False

'On Error GoTo ErrHandler
Exit Sub
ErrHandler:
Call net_ERR_center(1, Err.Number, Err.Description, "先选择计算列项目!或你选定的列不可计算")




End Sub

Private Sub menu_zongfen_Click()
Dim i, j, send, ps, findd As Integer
Dim ssum  As Single
Dim colseled As Boolean
On Error GoTo ErrHandler

'Dim colseled As Boolean
If grid.ColSel > 0 And grid.RowSel = Crow_max Then
   colseled = True
            
End If





findd = 0
For i = 0 To 10
       If Check(i).Value = 1 Then
          findd = 1
       End If
Next i

If findd = 0 And colseled = False Then

   MsgBox "先选择计算项目!"
   Exit Sub
End If


send = 0
For i = 1 To Crow_max
  If grid.TextMatrix(i, 0) = "*********" Then
  
  send = i - 1
  'MsgBox send
  Exit For
  End If
Next


If send = 0 Then
 Call MsgBox("在所有学号结束后必需有一个结束标志" + vbCrLf + "*********" + vbCrLf + "解决办法:在此位置点击 编辑/插入行记录结束标志", vbCritical)
  Exit Sub
End If


For i = send + 1 To Crow_max
  If grid.TextMatrix(i, 0) = "" Or grid.TextMatrix(i, 0) = "总分" Then
  
  ps = i
  Exit For
  End If
Next




grid.TextMatrix(ps, 0) = "总分"


For i = 0 To 10
       If Check(i).Value = 1 Then
             'MsgBox i

             
             ssum = 0

          
             For j = 1 To send
                 If grid.TextMatrix(j, i) <> "" Then
                     'MsgBox grid.TextMatrix(j, i)
                 
                     
                        ssum = ssum + CSng(grid.TextMatrix(j, i))
                     
                 End If
             
             Next j

           
             grid.TextMatrix(ps, i) = ssum
      End If
Next i


If colseled = True Then
             i = grid.ColSel
              ssum = 0

             
             For j = 1 To send
                 If grid.TextMatrix(j, i) <> "" Then
                     'MsgBox grid.TextMatrix(j, i)
                 
                     
                        ssum = ssum + CSng(grid.TextMatrix(j, i))
                     
                 End If
             
             Next j

           
             grid.TextMatrix(ps, i) = ssum



End If

Text1.Visible = False
'On Error GoTo ErrHandler
Exit Sub
ErrHandler:
Call net_ERR_center(1, Err.Number, Err.Description, "先选择计算列项目!或你选定的列不可计算")


End Sub

Private Sub menu_zongpingjun_Click()
Dim i, j, send, ps, findd As Integer
Dim ssum As Double
Dim sno As Integer
Dim PJ As Single
Dim colseled As Boolean
On Error GoTo ErrHandler




If grid.ColSel > 0 And grid.RowSel = Crow_max Then
   colseled = True
            
End If

        findd = 0
        For i = 0 To 10
               If Check(i).Value = 1 Then
                  findd = 1
               End If
        Next i
        
        If findd = 0 And colseled = False Then
        
        
             
        
           
                MsgBox "先选择计算列项目!"
                Exit Sub
           
           
        End If



send = 0
For i = 1 To Crow_max
  If grid.TextMatrix(i, 0) = "*********" Then
  
  send = i - 1
  'MsgBox send
  Exit For
  End If
Next


If send = 0 Then
 Call MsgBox("在所有学号结束后必需有一个结束标志" + vbCrLf + "*********" + vbCrLf + "解决办法:在此位置点击 编辑/插入行记录结束标志", vbCritical)
  Exit Sub
End If

For i = send + 1 To Crow_max
  If grid.TextMatrix(i, 0) = "" Or grid.TextMatrix(i, 0) = "平均分" Then
  
  ps = i
  Exit For
  End If
Next




grid.TextMatrix(ps, 0) = "平均分"




        For i = 0 To 10
               If Check(i).Value = 1 Then
                     'MsgBox i
        
                     
                     ssum = 0#
                     sno = 0
                  
                     For j = 1 To send
                         If grid.TextMatrix(j, i) <> "" Then
                             'MsgBox grid.TextMatrix(j, i)
                         
                             
                                ssum = ssum + CDbl(grid.TextMatrix(j, i))
                                sno = sno + 1
                         End If
                     
                     Next j
        
                     PJ = Int((ssum / sno) * 10000) / 10000
                     grid.TextMatrix(ps, i) = PJ
              End If
        Next i


If colseled = True Then

                     ssum = 0#
                     sno = 0
                     i = grid.ColSel
                     For j = 1 To send
                         If grid.TextMatrix(j, i) <> "" Then
                             'MsgBox grid.TextMatrix(j, i)
                         
                             
                                ssum = ssum + CDbl(grid.TextMatrix(j, i))
                         

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -