Поблагодарите небольшую помощь, если возможно, пожалуйста.udf excel 2007 и, возможно, глобальный
Я пытался помочь коллеге в работе, сопоставляя некоторые данные. Лист - это копия всех банковских выписок, включая адрес имени и другие нерелевантные данные (нам).
данные ему требуется все имели действительную дату в столбце B, поэтому я создал UDF, как показано ниже
Public Function IsADate(rngCell As Range) As Boolean
If IsDate(rngCell) Then
IsADate = True
Else
IsADate = False
End If
End Function
использовать функцию IsDate VBA.
Он отлично поработал.
Незадолго до окончания времени он подошел и сказал, что он больше не работал на другом листе в той же книге.
Я проверил, функция все еще была в модуле в этой книге, и если вы ввели его на листе, он появился в списке представленных функций, но после завершения формулы ячейка содержит #NAME. В малое время я не смог найти причину.
У кого-нибудь есть идея, что пошло не так. Он переименовал книгу, но использует ту же книгу.
Как и в сторону, я пытался сделать глобальную функцию в моей установке по
. Поместите его в Personal.xlsm, где у меня есть различные макросы, которые я использую во всех своих книгах.
b. В качестве дополнения, сохраняя как .xla и .xlam-файл, и выбирая файл в addins
Он по-прежнему не был распознан, даже не появился в списке функций.
Я пришел домой и попробовал вариант b в Excel 2003 (это все, что у меня есть), и он отлично работает в другой книге.
Недоумевает, если не сказать больше. : D
ТИА
Не ответ, а предложение. 'IsDate (RngCell)' возвращает 'true' или' false', поэтому нет необходимости вставлять его в оператор 'if'. – JNevill
Сначала проверьте имя вашего UDF именно на том, что вводится в строке формул. Если проблема сохраняется, тогда есть и другие способы попробовать. – ZAT
Спасибо за отзыв о том, что вам не нужно использовать оператор If –