|
Тема |
Re: броене... [re: intermaniq] |
|
Автор |
nepukis (новак) |
|
Публикувано | 24.09.08 10:22 |
|
|
Вярно е, че пивот таблицата решава мн. от проблемите, ама въпреки, че казват, че е мн. проста и аз още не мога да се справям с нея,макар, че смятам, че мога да се опрявя с всяка задача в ексела. За пивотката трябва някой да ти покаже кое, как и защо се прави (така съм чувал).
Та на въпроса ти:
клетка Е1 data =>Validation=>Setings=>Allow: избираш List ; Sourse: =$B:$B
клетка F1 data =>Validation=>Setings=>Allow: избираш List ; Sourse: =$C:$C
Така в тея клетки ще ти се появи падащо меню само на съществуващите в колони B и C данни
в клетка D2 =IF((B2=$E$1)*(C2=$F$1);1;0) (казвам клетка D2 защото предполагам, че на първи я ред имаш наименования на колоните)
копираш надоло в колона D
клетка G1 =SUM(D:D) в нея ще имаш нужния резултат
Аз не бих го направил по тоя начин, защото цялата ти колона D ти се запълва.
Щях да го направя с макрос, ама не знам до колко си запознат с него.
Правиш си потрбителска форма с 2 комбобокса и един етикет със следния код:
Dim r As Integer
Dim d As Date
Private Sub ComboBox1_Change()
Call broene
End Sub
Private Sub ComboBox2_Change()
Call broene
End Sub
Private Sub UserForm_Initialize()
r = Selection.SpecialCells(xlCellTypeLastCell).Row
For i = 1 To r
ComboBox1.AddItem Cells(i, 2)
ComboBox2.AddItem Cells(i, 3)
Next
End Sub
Sub broene()
br = 0
For i = 1 To r
d = ComboBox2.Value
If Cells(i, 2) = ComboBox1.Value And Cells(i, 3) = d Then br = br + 1
Next
Label1.Caption = br
End Sub
|
| |
|
|
|