добрый день! подскажите, пожалуйста, формулу подсчета количества ячеек по определенным месяцам из общего массива значений. необходимо подсчитать, сколько было условных единиц, например, в январе 2010, феврале 2010, марте 2013. условия и вид задачи - в приложении. и вопрос - будет ли изменяться формула из решения задачи, если некоторые строки с датами будут отсуствовать, то есть в массиве значений будет не 30-31 строка месяца, а всего, например, 5-6 строк одного месяца. заранее спасибо
Диапазон условных единиц задан от 1 до 100 (поправьте если надо больше).
Цитата
будет ли изменяться формула из решения задачи, если некоторые строки с датами будут отсуствовать, то есть в массиве значений будет не 30-31 строка месяца, а всего, например, 5-6 строк одного месяца
А вы проверьте и отпишитесь)
Upd Только сейчас обратил внимание, что в соответствии с названием темы вам нужно количество ячеек. В таком случае и формула будет другой:
memo, все работает до того момента, как я вставляю в столбец "А" значения с разрывом по датам, то есть, не 30-31 строка с датами, а имеются "пропущенные" дни, условно, 01.12.2019, 19.12.2019, 01.01.2020 и т.д.. кроме того, некоторых месяцев может не быть в целом
ghf написал: подсчитать, сколько было условных единиц, например, в январе 2010, феврале 2010, марте 2013. условия и вид задачи - в приложении.
Указаны конкретные месяцы, и не важно есть там отсутствующие дни или нет, формула подсчитает количество значений для тех дней какие есть. Кстати, в вашем последнем примере я не нашел данные за Январь и Февраль 2010 года, равно как и за Март 2013-го.
memo,спасибо, но у меня, возможно, глупый вопрос - формулы перестают считать, если я копирую столбец с датами из другого файла. формат ячеек такой же, как и в Вашем решении. не понимаю.
ghf, Обратите внимание, у вас, в столбце С с критериями - даты с косыми чертами, а в столбце А с точками. Попробуйте выделить столбец А и через поиск и замену сменить точки на косые черты.
memo, я не понял, какие именно черточки вы имеете ввиду, но у меня в столбце "С" формат ячеек, условно - "март 2012". приведение ячеек к формату, который имеется у ячеек столбца "А" - "*14.03.2012" (условно), к положительному результату не привел.
memo, я понимаю, о чем вы говорите, но в файле, который я загружал в последюю очередь - месяцы (2).xlsx (131.33 К) - в сообщении от 07.06.2021 00:37:08, формат именно такой, какой я описал
Цитата
ghf написал: в столбце "С" формат ячеек, условно - "март 2012". приведение ячеек к формату, который имеется у ячеек столбца "А" - "*14.03.2012" (условно)
в строке формул отражаются даты что из столбца "А", что из столбца "С" - с точками и формулы почему-то считают все на "0"
Sub Tablica()
Dim i As Long
Dim j As Long
Dim iLastRow As Long
Dim iLR As Long
Application.ScreenUpdating = False
iLastRow = Cells(Rows.Count, "A").End(xlUp).Row
iLR = Cells(Rows.Count, "C").End(xlUp).Row
Range("D2:D" & iLR).ClearContents
For j = 2 To iLR
For i = 2 To iLastRow
If Val(Split(Cells(i, "A"), ".")(1)) = Month(Cells(j, "C")) And _
Val(Split(Cells(i, "A"), ".")(2)) = Year(Cells(j, "C")) Then
Cells(j, "D") = Cells(j, "D") + Cells(i, "B")
End If
Next
Next
Application.ScreenUpdating = True
End Sub