Добрый вечер в соседном форуме мне помогли. Но работа макроса не дошел до конца. Код макроса такой [vba]
Код
Sub MMM() LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(6, Columns.Count).End(xlToLeft).Column With CreateObject("VBScript.RegExp") .Pattern = "\[\d+\]" .Global = True Cells(6, LC + 1) = "O‘zlashtirish" For i = 7 To LR Sum = 0 For j = 4 To LC If .Test(Cells(i, j)) Then Cells(i, j) = .Replace(Cells(i, j), "") Sum = Sum + Cells(i, j).Value Next av = Round(Sum / (LC - 3), 0) Select Case av Case 1 To 60 Cells(i, LC + 1).Value = 2 Cells(i, LC + 1).Font.Color = vbYellow Case 61 To 70 Cells(i, LC + 1).Value = 3 Cells(i, LC + 1).Font.Color = vbGreen Case 71 To 90 Cells(i, LC + 1).Value = 4 Cells(i, LC + 1).Font.Color = vbBlue Case 91 To 100 Cells(i, LC + 1).Value = 5 Cells(i, LC + 1).Font.Color = vbRed End Select Next
End With End Sub
[/vba]
Добрый вечер в соседном форуме мне помогли. Но работа макроса не дошел до конца. Код макроса такой [vba]
Код
Sub MMM() LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(6, Columns.Count).End(xlToLeft).Column With CreateObject("VBScript.RegExp") .Pattern = "\[\d+\]" .Global = True Cells(6, LC + 1) = "O‘zlashtirish" For i = 7 To LR Sum = 0 For j = 4 To LC If .Test(Cells(i, j)) Then Cells(i, j) = .Replace(Cells(i, j), "") Sum = Sum + Cells(i, j).Value Next av = Round(Sum / (LC - 3), 0) Select Case av Case 1 To 60 Cells(i, LC + 1).Value = 2 Cells(i, LC + 1).Font.Color = vbYellow Case 61 To 70 Cells(i, LC + 1).Value = 3 Cells(i, LC + 1).Font.Color = vbGreen Case 71 To 90 Cells(i, LC + 1).Value = 4 Cells(i, LC + 1).Font.Color = vbBlue Case 91 To 100 Cells(i, LC + 1).Value = 5 Cells(i, LC + 1).Font.Color = vbRed End Select Next
Макрос работаеть он должно сортировать оценки по убиванию сначала по “Davlat granti”, а затем по “To‘lov-shartnoma” и он только работаеть для одного листа. В файле будеть много таких одиноковых листов у ных разнича только в количество предметов (выходя из этого количество столбцов будеть разними). В макросе еще одно условие следует ввести для студентов, обучающихся по “Davlat granti” в русским “Государственным грантам” им не будет назначено стипендия, если они 30% и более процентов от общего количества сданных экзаменов наберет 3 балла. Их успеваемость должен быть отмечен как 3 (неназначено).
Макрос работаеть он должно сортировать оценки по убиванию сначала по “Davlat granti”, а затем по “To‘lov-shartnoma” и он только работаеть для одного листа. В файле будеть много таких одиноковых листов у ных разнича только в количество предметов (выходя из этого количество столбцов будеть разними). В макросе еще одно условие следует ввести для студентов, обучающихся по “Davlat granti” в русским “Государственным грантам” им не будет назначено стипендия, если они 30% и более процентов от общего количества сданных экзаменов наберет 3 балла. Их успеваемость должен быть отмечен как 3 (неназначено).tulakov77
Сообщение отредактировал tulakov77 - Суббота, 18.02.2023, 17:52
Вот готова макрос но надо сделат маленкий доработку.Условия сортироват оценки по убиванию сначала по “Davlat granti”, а затем по “To‘lov-shartnoma” неработает полноценно. При сортировке они смещиваються.
Вот готова макрос но надо сделат маленкий доработку.Условия сортироват оценки по убиванию сначала по “Davlat granti”, а затем по “To‘lov-shartnoma” неработает полноценно. При сортировке они смещиваються.tulakov77