Я создал лист, содержащий некоторые значения; это календарь, который отображает некоторую информацию за каждый день года. за каждый день, у меня есть информация, указанная в качестве письма. , например. 3 февраля 2016 г. -> «М»ошибка с использованием персональной функции VBA
У меня также есть функция VBA, которая вычисляет сумму ячеек месяца, равную - скажем - «М».
Моя первая попытка состояла в том, чтобы изменить в VBA значение ячейки, получающей сумму, с функцией VBA; но моя проблема заключается в том, что пользователи могут вручную редактировать некоторые ячейки календаря, поэтому я хотел бы, чтобы ячейка суммы была пересчитана автоматически, а теперь это не так.
вот моя функция, находится в модуле с именем «а»:
Function nombreCellulesDansEtat2() As Integer
Application.Volatile
Dim moisSub
Dim équipeSub
Dim étatSub
moisSub = 1
équipeSub = 1
étatSub = "M"
Dim ligneDépart As Integer
ligneDépart = 5 + (moisSub - 1) * 9
Dim ligneEnCours As Integer
ligneEnCours = ligneDépart + équipeSub
Dim cellule
Dim retour As Integer
For Each cellule In sh.Range("B" & ligneEnCours & ":AF" & ligneEnCours)
retour = retour + IIf(cellule.Value = étatSub, 1, 0)
Next cellule
nombreCellulesDansEtat = retour
End Function
пожалуйста, не фокусируется на команды номера («équipeSub» на французском языке), это не связанно с проблемой.
ячейку, содержащие сумму имеет следующую формулу:
=nombreCellulesDansEtat2()
и возможность автоматического вычисления формул включен (я использую Excel 365 с окнами 10)
ошибка в том, что сумма ячейка содержит:
#VALUE!
и не требуемая сумма.
спасибо, что поддержал мой плохой английский!
Вы пробовали переходить через него с помощью отладчика, когда он дает вам ошибку? – litelite
Кроме того, вам следует рассмотреть возможность изменения имени сообщения. Потому что эта ошибка означает, что excel попытался перепроверить, но произошла ошибка. – litelite
Подставляя sh для ActiveSheet, функция вычисляет целое число –