Здравствуйте уважаемые программисты... можно ли сделать, чтобы при нажатии на форме кнопки "Вывести диагноз на лит" диагноз автоматически выводился на листе сразу всем пациентам (сейчас по щелчку он выводит для каждого отдельно)? [vba]
Код
Private Sub CommandButton5_Click() Dim NORM As Range, R, T Set NORM = Range("НОРМА") For R = 1 To 7 Debug.Print Controls("TextBox" & R).Text T = CDbl(Replace(Controls("TextBox" & R).Text, ".", ","))
If T < NORM(R, 2) Or T > NORM(R, 3) Then If Val(TextBox2.Text) < 8 Then st = "Легкая степень тяжести." ElseIf Val(TextBox2.Text) > 14 Then st = "Тяжелый случай." Else st = "Средняя степень тяжести." End If End If If T < NORM(R, 2) Or T > NORM(R, 3) Then If Val(TextBox5.Text) <= 3 Then st = st & " " & "1 тип" ElseIf Val(TextBox5.Text) > 3 Then st = st & " " & "2 тип" End If Лист2.Cells(ComboBox1.ListIndex + 2, 9) = "Пациент болен. Сахарный диабет!" & vbLf & st Exit Sub End If Next R Лист2.Cells(ComboBox1.ListIndex + 2, 9) = "Пациент здоров!" End Sub
[/vba]
Здравствуйте уважаемые программисты... можно ли сделать, чтобы при нажатии на форме кнопки "Вывести диагноз на лит" диагноз автоматически выводился на листе сразу всем пациентам (сейчас по щелчку он выводит для каждого отдельно)? [vba]
Код
Private Sub CommandButton5_Click() Dim NORM As Range, R, T Set NORM = Range("НОРМА") For R = 1 To 7 Debug.Print Controls("TextBox" & R).Text T = CDbl(Replace(Controls("TextBox" & R).Text, ".", ","))
If T < NORM(R, 2) Or T > NORM(R, 3) Then If Val(TextBox2.Text) < 8 Then st = "Легкая степень тяжести." ElseIf Val(TextBox2.Text) > 14 Then st = "Тяжелый случай." Else st = "Средняя степень тяжести." End If End If If T < NORM(R, 2) Or T > NORM(R, 3) Then If Val(TextBox5.Text) <= 3 Then st = st & " " & "1 тип" ElseIf Val(TextBox5.Text) > 3 Then st = st & " " & "2 тип" End If Лист2.Cells(ComboBox1.ListIndex + 2, 9) = "Пациент болен. Сахарный диабет!" & vbLf & st Exit Sub End If Next R Лист2.Cells(ComboBox1.ListIndex + 2, 9) = "Пациент здоров!" End Sub
Private Sub CommandButton5_Click() Dim NORM As Range, R, T Set NORM = Range("НОРМА") Application.ScreenUpdating = False With Лист2 For i = 1 To ComboBox1.ListCount For R = 1 To 7 T = .Cells(i + 1, R + 1) If T < NORM(R, 2) Or T > NORM(R, 3) Then If .Cells(i + 1, 3) < 8 Then st = "Легкая степень тяжести." ElseIf .Cells(i + 1, 3) > 14 Then st = "Тяжелый случай." Else st = "Средняя степень тяжести." End If End If
If T < NORM(R, 2) Or T > NORM(R, 3) Then If .Cells(i + 1, 6) <= 3 Then st = st & " " & "1 тип" ElseIf .Cells(i + 1, 6) > 3 Then st = st & " " & "2 тип" End If .Cells(i + 1, 9) = "Пациент болен. Сахарный диабет!" & vbLf & st Exit For End If If .Cells(i + 1, 9) = "" Then .Cells(i + 1, 9) = "Пациент здоров!" Next R Next i End With Application.ScreenUpdating = True End Sub
[/vba]
Здравствуйте [vba]
Код
Private Sub CommandButton5_Click() Dim NORM As Range, R, T Set NORM = Range("НОРМА") Application.ScreenUpdating = False With Лист2 For i = 1 To ComboBox1.ListCount For R = 1 To 7 T = .Cells(i + 1, R + 1) If T < NORM(R, 2) Or T > NORM(R, 3) Then If .Cells(i + 1, 3) < 8 Then st = "Легкая степень тяжести." ElseIf .Cells(i + 1, 3) > 14 Then st = "Тяжелый случай." Else st = "Средняя степень тяжести." End If End If
If T < NORM(R, 2) Or T > NORM(R, 3) Then If .Cells(i + 1, 6) <= 3 Then st = st & " " & "1 тип" ElseIf .Cells(i + 1, 6) > 3 Then st = st & " " & "2 тип" End If .Cells(i + 1, 9) = "Пациент болен. Сахарный диабет!" & vbLf & st Exit For End If If .Cells(i + 1, 9) = "" Then .Cells(i + 1, 9) = "Пациент здоров!" Next R Next i End With Application.ScreenUpdating = True End Sub
Алексей (wild_pig), между прочим, уже огромному количеству народа помог, так что не ТЕБЕ (алаверды на твое "тыканье") его судить. Он добрейшей души человек, но, видимо, не любит наглецов, как и я, между прочим. Кстати, почитай еще вот это. И замечание тебе - нарушение Правил форума п. 5.s. А еще - здесь грубость очень не приветствуется. И обычно наказывается. Прими к сведению.
Алексей (wild_pig), между прочим, уже огромному количеству народа помог, так что не ТЕБЕ (алаверды на твое "тыканье") его судить. Он добрейшей души человек, но, видимо, не любит наглецов, как и я, между прочим. Кстати, почитай еще вот это. И замечание тебе - нарушение Правил форума п. 5.s. А еще - здесь грубость очень не приветствуется. И обычно наказывается. Прими к сведению._Boroda_