Zum Inhalt springen

AbsolutBeginner

Mitglieder
  • Gesamte Inhalte

    3
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von AbsolutBeginner

  1. Kurzer Hinweis, zu obigem Hilfeersuchen: Geändert wurde vor allem der Bereich zu Bachelor "8211" und "8212", da die Zählung zukünftig (wegen der weiteren Verarbeitung) über die gewählte Vertiefung/Schwerpunkt zu erfolgen hat. Die vorherige Schreibweise If !Status <> "B" Then Select Case strAb & strStgnr ' Bachelor Case "8211" strSpalte = "S02" Select Case strStg Case "918", "136" strStg = strVert Case Else strStg = strStg strKzfa = "H" intRegel = 6 End Select Case "8212" strSpalte = "S24" Select Case strStg Case "918", "136" strStg = strVert Case Else strStg = strStg strSpalte = "S24" strAb = "89" strKzfa = "N" intRegel = 6 End Select hat zu einer fehlerhaften Summe der Studierenden ohne Angabe der gewählten Vertiefung geführt. Vielen Dank an Alle, die bereit sind, sich mit diesem Horrorcode auseinander zu setzen.
  2. Hallo Community, wer hat eine Idee wo in folgendem Anpassungscode der Fehlerteufel zugeschlagen hat. Ich suche bereits seit mehreren Tagen - vielleicht bin ich aber auch nur zu blind. Es handelt sich um eine bestehende Datenbank für eine Studierendenstatistik, die ich überarbeiten musste. Das Einlesen der Daten aus der ursprünglichen aktiven Datenbank verläuft unproblematisch. Die Bearbeitung des 'statischen' Abklatsch für die amtlichen Statistiken erfolgt als letzter Punkt und läuft einmal durch. Die Wiederholung erfolgt jedoch nicht. ' Dieses VBA-Programm wird im Formular "FrmStudierende" ' unter "4. Daten anpassen" aufgerufen. Es modifiziert ' die Datensätze der Tabelle "StudStat". Sub StudStat_anpassen() Dim db As DAO.Database Dim rstStud As DAO.Recordset Dim strSem, strStg, strAb, strVert, strStgnr, strKzfa, strSpalte As String Dim strStatus As String Dim intStgsem, intRegel As Integer Dim lngI As Long Set db = CurrentDb() ' Fügt in der Tabelle "StudStat" neue Spalten für "stgab", die ' Spaltenzuordnung der Studierendenstatistik und die Regelstudienzeit an. db.Execute ("ALTER TABLE StudStat" & _ " ADD COLUMN stgab TEXT (5), Spalte TEXT (3), regel INTEGER") Set rstStud = db.OpenRecordset("StudStat") ' Daten ändern lngI = 0 With rstStud Do Until .EOF strStg = !stg strAb = !ab strVert = !vert strKzfa = !kzfa strStgnr = !stgnr intStgsem = !stgsem lngI = lngI + 1 ' Statusanzeige Select Case lngI Case Is = 1 strStatus = "1% erledigt" Forms("FrmStudierende").txtStatus.SetFocus Forms("FrmStudierende").txtStatus = strStatus Forms("FrmStudierende").ComDaten4.SetFocus .... End Select ' Ohne beurlaubte Studierende If !Status <> "B" Then Select Case strAb & strStgnr & strVert ' Bachelor Case "8211" intRegel = 6 strSpalte = "S02" strKzfa = "H" If strVert > 700 Then strStg = strVert Else strStg = strStg End If Case "8212" strSpalte = "S06" strKzfa = "N" strAb = "89" If strVert > 700 Then strStg = strVert Else strStg = strStg End If End Select ' Master Select Case strAb & strStgnr & strStg Case "8811" strSpalte = "S03" ' Dramaturgie If strStg = "903" Then intRegel = 4 Else intRegel = 6 End If ' Magister Case "0211" strSpalte = "S04" Case "629" If strKzfa = "N" Then strSpalte = "S06" strAb = "09" intRegel = 10 Else strSpalte = "S04" strKzfa = "H" strAb = "02" intRegel = 10 End If Case "0212" intRegel = 10 If strKzfa = "H" Then strSpalte = "S05" Else strSpalte = "S06" strAb = "09" strKzfa = "N" End If Case "0213" intRegel = 10 strSpalte = "S06" strAb = "09" strKzfa = "N" ' Promotion Case "0611", "0711" strSpalte = "S07" strKzfa = "H" intRegel = 9 ' Staatsexamen Case "0811", "8311", "8511" strSpalte = "S01" ' Medizin: Semester 1-4 = Vorklinik Case "107" intRegel = 13 If intStgsem > 4 Then strAb = "08" Else strAb = "95" End If Case "185" intRegel = 11 ' Rechtswissenschaft Case "135" intRegel = 9 ' Psychotherapie Case "902" intRegel = 4 Case Else intRegel = 8 End Select Select Case strAb & strStgnr & strVert ' L1 Case "2111", "3111" intRegel = 7 If strStg = "254" Then strSpalte = "S11" strStg = strVert strKzfa = "N" strAb = "20" strStgnr = "12" Else strSpalte = "S10" strKzfa = "H" strAb = "21" End If Case "2112", "3112", "2113", "3113" intRegel = 7 strSpalte = "S11" strKzfa = "N" strAb = "20" If strStg = "254" Then strStg = strVert End If End Select Select Case strAb & strStgnr ' L2 Case "2411", "3311" intRegel = 7 strSpalte = "S12" strKzfa = "H" strAb = "24" Case "2412", "3312" intRegel = 7 strSpalte = "S13" strKzfa = "H" strAb = "24" Case "2413", "3313" intRegel = 7 strSpalte = "S14" strKzfa = "H" strAb = "24" ' L3 Case "2511", "3411" intRegel = 9 strSpalte = "S15" strKzfa = "H" strAb = "25" Case "2512", "3412" intRegel = 9 strSpalte = "S16" strKzfa = "H" strAb = "25" Case "2513", "3413" intRegel = 9 strSpalte = "S17" strKzfa = "H" strAb = "25" ' L5 Case "2611", "3511" intRegel = 9 strSpalte = "S18" strKzfa = "H" strAb = "26" Case "2612", "3512" intRegel = 9 strSpalte = "S19" strKzfa = "H" strAb = "26" Case "2613", "3513" intRegel = 9 strSpalte = "S20" strKzfa = "N" strAb = "26" ' HandelslehrerIn Case "1811", "3811" intRegel = 8 strSpalte = "S01" strKzfa = "H" strAb = "18" ' kirchl. Prüfung Case "0411", "9211", "9311", "9411", "9611" intRegel = 9 strSpalte = "S01" strKzfa = "H" ' Diplom Case "1111" strSpalte = "S01" strKzfa = "H" Select Case strStg Case "021", "175", "029" intRegel = 8 Case "026", "128", "032" intRegel = 10 Case Else intRegel = 9 End Select ' Doppelstudium LA Case "2121", "2421", "2521", "2621" strSpalte = "S21" strKzfa = "H" If strStg = "254" Then strStg = strVert strKzfa = "N" strAb = "20" End If Case "3121" strSpalte = "S21" strKzfa = "H" strAb = "21" If strStg = "254" Then strStg = strVert strKzfa = "N" strAb = "20" End If Case "3321" strSpalte = "S21" strKzfa = "H" strAb = "24" Case "3421" strSpalte = "S21" strKzfa = "H" strAb = "25" Case "3521" strSpalte = "S21" strKzfa = "H" strAb = "26" ' Doppelstudium nicht LA Case "0221", "0421", "0821", "1121", "1821", "3821", "8221", "8321", _ "8821", "9221", "9321", "9421", "9521" strSpalte = "S08" strKzfa = "H" intRegel = 99 If strStg = "107" Then If intStgsem > 4 Then strAb = "08" Else strAb = "95" End If End If ' Sonstige Case Else strSpalte = "S01" intRegel = 99 End Select ' Beurlaubte If !Status = "B" Then intRegel = 99 Select Case strStg & strStgnr Case strStg = "107" If intStgsem > 4 Then strAb = "08" Else strAb = "95" End If Case strStg = "254" strStg = strVert strKzfa = "N" strAb = "20" End Select Select Case strStgnr Case "11" strSpalte = "S23" Case Else strSpalte = "S24" End Select End If .Edit !stgab = strStg & strAb !stg = strStg !ab = strAb !kzfa = strKzfa !Spalte = strSpalte !regel = intRegel .Update Debug.Print lngI .MoveNext ' nächster Eintrag Loop .Close End With -Alle Ideen und Hinweise sind willkommen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...