Ошибка с пользовательской функцией Excel VBA для поиска предопределенных имен в строке и извлечения предопределенного имени

Как сказал @KyssTao, help(dates.num2date) говорит, что x должен быть float, дающим число дней с 0001-01-01 плюс один. Следовательно, 19910102 не 2 / янв / 1991, потому что, если вы посчитали 19910101 дней с 0001-01-01, вы получите что-то в год 54513 или подобное (разделите на 365,25, количество дней в году).

Вместо этого используйте datestr2num (см. help(dates.datestr2num)):

new_x = dates.datestr2num(date) # where date is '01/02/1991'
-1
задан Pᴇʜ 18 January 2019 в 07:26
поделиться

1 ответ

На фотографии предположим, что мой желтый диапазон равен названному диапазону Accounts

<час>
Option Explicit

Public Function Extracting(name As Range) As String

Dim Arr, i As Long
Arr = Sheets("Sheet1").Range("A1:A10").Value

For i = LBound(Arr) To UBound(Arr)
    If InStr(name, Arr(i, 1), 0) Then
        Extracting = Extracting & Arr(i, 1) & "/"
    End If
Next i

If Extracting = "" Then
    Extracting = "No Users Found"
Else
    Extracting = Left(Extracting, Len(Extracting) - 1)
End If

End Function
<час>

enter image description here

0
ответ дан urdearboy 18 January 2019 в 07:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: