Страницы: 1
RSS
Создать на 2 листе книги таблицу, которая содержит сведения о стоимости лечения в заданном отделении.
 
Помогите пожалуйста создать на 2 листе книги таблицу, которая содержит сведения о стоимости лечения
в заданном отделении(из 1 листа) в VBA.Буду очень благодарен)
Файл с моими данными прикрепляю
 
Дима Ковелько, Вы показали только исходные данные, а желаемый результат на втором листе? Поменяйте файл.
 
Ну на 1 листе исходные данные,а на втором листе по первому листу создать  таблицу, которая содержит сведения о стоимости леченияв заданном о отделении
 
одно и то же в каждой вашей теме )
я напишу одну фразу, прочтите её 1000 раз, но если не понятно, то прочтите её ещё 1000 раз, если не понятно, то читайте по 1000 раз каждый день: "люди с форума по Excel НЕ работают со мной в одной компании/заведении/учреждении!"
Если вы работаете в организации и перед вами стоит какая-то задача и вы не знаете как её решить, и вы принимаете решение обратиться на форум за помощью, то не нужно задавать вопросы в стиле "как мне посчитать это?". Слово "это" - для вас понятно, а для нас "это" вообще не понятно. Вы же хотите получить ответ - ну, потрудитесь объяснить и показать что вам надо и в каком виде и какой именно ответ и в какой форме вы хотите получить.
У меня опять складывается ощущение, что вы школьник в классе 7-м, вам задали Д/З и вы пытаетесь решить Д/З с помощью нас. Почему вам лень показать на втором листе итоговый результат, который вы хотите получить? Т.е. вам лень показать результат, но мы должны вам помогать? Люди, которые показывают исходные данные и результат, который они хотят получить на листе - быстрее получают помощь на форуме, чем те, кто не показывает начальный и конечный результаты.
Я хочу вам помочь, могу написать вам макрос, но как должен выглядеть конечный результат для меня непонятно.

P.S. Я преподавал в школе (гимназии) и знаю, что за дети в 7-м классе и как они себя ведут.
Изменено: New - 21.10.2021 14:49:50
 
Паша, не нужно уговаривать автора: нет образца - нет решения.
 
Дима Ковелько, а зачем второй лист? у вс же на первом все видно что и сколько стоит) используйте первый лист)
Не бойтесь совершенства. Вам его не достичь.
 
как вариант

Код
Sub Test2()
    Dim arrData, LastRow As Long, TotalAmount As Double, Department As Long, blFound As Boolean
    
    Department = Application.InputBox("Введите номер отделения: ", "Номер отделения", , , , , , 1)
    If Department = 0 Then
        MsgBox "Вы не указали номер отделения!", vbExclamation, "Внимание"
        Exit Sub
    End If
    With Worksheets("Лист1")
        LastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
        arrData = .Range("A3:E" & LastRow).Value
    End With
    
    For i = 1 To UBound(arrData)
        If arrData(i, 2) = Department Then
            blFound = True
            TotalAmount = TotalAmount + (arrData(i, 4) * arrData(i, 3)) + arrData(i, 5)
        End If
    Next i
    
    If blFound = True Then
        With Worksheets("Лист2")
            .Activate
            .Range("A1") = "номер отделения"
            .Range("B1") = "стоимости лечения"
            .Range("A2") = Department
            .Range("B2") = TotalAmount
        End With
    Else
        MsgBox "Отдел не найден!", vbExclamation, "Внимание"
    End If
End Sub
Изменено: New - 21.10.2021 15:39:03
 
New,Это задания для курсовой работы,там написано просто что надо сделать.Там нет примера или образца.Что нужно получить я описал  в вопросе)
Спасибо за ваш ответ, подошел )
Страницы: 1
Читают тему (гостей: 1)
Наверх