Здравствуйте! Я не программист и не студент, задачки придумываю себе сам по мере возникновения идеи или надобности и для самообразования. Вот возникла надобность в быстром отчете - есть таблица (прилагается), хочу сделать быстрый отчет по подсчету ячеек по нескольким условиям - например: Посчитать количество 725 по полю "модель"; за период от "01.01.2018" до "10.02.2018"; для "Попов". Или Посчитать за определенный период "от" и "до" количество "фб" по полю "Работа" (причем не "замена фб", а именно "фб" - из всего текста надо вычленить "фб", так как может быть "замена впз", а может быть и то и другое, и т.д.). Вот логику действий понимаю, с помощью формул делаю (при этом торможение Excel наблюдаю), но вот с кодом ВБА у меня огромная проблема... По этому прошу помощи у Вас - знающих и понимающих. Переключение поля поиска думаю сделать OptionBootton, но если считаете это неудобным, то - форму можно менять на свое усмотрение
Буду очень признателен и заранее благодарю!
срочности нет
Здравствуйте! Я не программист и не студент, задачки придумываю себе сам по мере возникновения идеи или надобности и для самообразования. Вот возникла надобность в быстром отчете - есть таблица (прилагается), хочу сделать быстрый отчет по подсчету ячеек по нескольким условиям - например: Посчитать количество 725 по полю "модель"; за период от "01.01.2018" до "10.02.2018"; для "Попов". Или Посчитать за определенный период "от" и "до" количество "фб" по полю "Работа" (причем не "замена фб", а именно "фб" - из всего текста надо вычленить "фб", так как может быть "замена впз", а может быть и то и другое, и т.д.). Вот логику действий понимаю, с помощью формул делаю (при этом торможение Excel наблюдаю), но вот с кодом ВБА у меня огромная проблема... По этому прошу помощи у Вас - знающих и понимающих. Переключение поля поиска думаю сделать OptionBootton, но если считаете это неудобным, то - форму можно менять на свое усмотрение
Переключение поля поиска думаю сделать OptionBootton
А если потребуется найти Сидорова с работой фб? Сделала без учета OptionBootton. [vba]
Код
Private Sub CommandButton1_Click() Dim lr&, i&, k% lr = Cells(Rows.Count, 2).End(xlUp).Row
For i = 2 To lr If Cells(i, "b") >= CDate(TextBox1) And Cells(i, "b") <= CDate(TextBox2) And _ (Cells(i, "e") = TextBox3 Or TextBox3 = "") And _ (Cells(i, "f") = Val(TextBox4) Or TextBox4 = "") And _ (Cells(i, "h") Like "*" & TextBox5 & "*" Or TextBox5 = "") Then
k = k + 1 End If Next i Label7 = k End Sub
[/vba] Проверки не писала (проверки дат, регистр в ФИО и т.д.)
Если все-таки нужно по OptionBootton, раскомментируйте оставшийся код в форме.
Переключение поля поиска думаю сделать OptionBootton
А если потребуется найти Сидорова с работой фб? Сделала без учета OptionBootton. [vba]
Код
Private Sub CommandButton1_Click() Dim lr&, i&, k% lr = Cells(Rows.Count, 2).End(xlUp).Row
For i = 2 To lr If Cells(i, "b") >= CDate(TextBox1) And Cells(i, "b") <= CDate(TextBox2) And _ (Cells(i, "e") = TextBox3 Or TextBox3 = "") And _ (Cells(i, "f") = Val(TextBox4) Or TextBox4 = "") And _ (Cells(i, "h") Like "*" & TextBox5 & "*" Or TextBox5 = "") Then
k = k + 1 End If Next i Label7 = k End Sub
[/vba] Проверки не писала (проверки дат, регистр в ФИО и т.д.)
Если все-таки нужно по OptionBootton, раскомментируйте оставшийся код в форме.Manyasha
А если потребуется найти Сидорова с работой фб? Сделала без учета OptionBootton.
Ничего себе!?!?!? Я думал там будет куча всяких if, dim, with - - - а тут так кратко и работает!!! Блин - где бы учителя найти по ВБА? Чем больше вижу тут всяких интересных кодов, тем больше влюбляюсь в Excel...
Спасибо огромное!
Ах да - я так понял, что без дат работать не будет - по всей таблице просчитать 725 у Попова??? Но это не критично!!! Еще раз спасибо!
А если потребуется найти Сидорова с работой фб? Сделала без учета OptionBootton.
Ничего себе!?!?!? Я думал там будет куча всяких if, dim, with - - - а тут так кратко и работает!!! Блин - где бы учителя найти по ВБА? Чем больше вижу тут всяких интересных кодов, тем больше влюбляюсь в Excel...
Спасибо огромное!
Ах да - я так понял, что без дат работать не будет - по всей таблице просчитать 725 у Попова??? Но это не критично!!! Еще раз спасибо!urlchik