Advertisement
Guest User

Oppgave 9

a guest
Nov 14th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Private Sub cboTildelPlass_Click()
  2.  
  3.  
  4. Dim studier() As Studie
  5. Dim i As Long
  6. Dim rs As DAO.Recordset
  7. Dim stdset As DAO.Recordset
  8. Dim stdset2 As DAO.Recordset
  9. Dim strsql As String
  10. Dim strsql2 As String
  11. Dim Navn As String
  12. Dim StudieØnske As String
  13. Dim Poeng As Long
  14. Dim Prioritering As Long
  15. DoCmd.SetWarnings False
  16.  
  17. DoCmd.RunSQL "DELETE * FROM tblStudieplass"
  18.  
  19.  
  20. Set rs = CurrentDb.OpenRecordset("tblStudier")
  21.  
  22.  
  23. With rs
  24.     Do While Not .EOF
  25.         i = i + 1
  26.         ReDim Preserve studier(1 To i)
  27.         studier(i).Navn = rs.Fields("StudieKode").Value
  28.         studier(i).antPlass = rs.Fields("AntallPlasser").Value
  29.        
  30.         .MoveNext
  31.     Loop
  32. End With
  33.  
  34. strsql = "SELECT * FROM qStudPoeng"
  35. Set stdset = CurrentDb.OpenRecordset(strsql)
  36. strsql2 = "SELECT * FROM qStudenterStudie"
  37. Set stdset2 = CurrentDb.OpenRecordset(strsql2)
  38.  
  39.     i = 0
  40.    
  41. With stdset
  42.     Do While Not .EOF
  43.     stdset2.MoveFirst
  44.     Navn = stdset.Fields("StudentID").Value
  45.    
  46.  
  47.     With stdset2
  48.         Do While Not .EOF
  49.             If Navn = stdset2.Fields("StudentID").Value Then
  50.                 StudieØnske = stdset2.Fields("StudieKode")
  51.                 Poeng = stdset.Fields("Opptakspoeng")
  52.                 Prioritering = stdset2.Fields("Prioritering")
  53.                         For i = LBound(studier) To UBound(studier)
  54.                             If studier(i).Navn = StudieØnske And studier(i).antPlass > 0 Then
  55.                                 DoCmd.RunSQL "INSERT INTO tblStudieplass (StudentID, StudieKode, Prioritering) VALUES ('" & Navn & "','" & StudieØnske & "'," & Prioritering & ")"
  56.                                 studier(i).antPlass = studier(i).antPlass - 1
  57.                                 stdset2.MoveNext
  58.                                 Exit For
  59.                             ElseIf studier(i).Navn = StudieØnske And studier(i).antPlass = 0 Then
  60.                                 Exit For
  61.                             End If
  62.                         Next i
  63.                        
  64.                 Exit Do
  65.              Else
  66.                 .MoveNext
  67.             End If
  68.         Loop
  69.     End With
  70.    
  71.    
  72.    
  73.    
  74.    
  75.     .MoveNext
  76.         Loop
  77. End With
  78.  
  79.  
  80.  
  81.  
  82.  
  83. Call MsgBox("Studentene har fått tildelt studieplass", vbInformation)
  84.  
  85. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement