Здравствуйте! Подскажите, пожалуйста, а то я никак не могу понять:
Есть две таблицы Эксель (приложу их) и пользовательская формула, которую составил в VBA:+
Нужно с этой формулой вставить значения в ячейки C18 и ниже в Аларь из Ныгда, массива C3-C21. Но при вводе аргументов мне выдает ошибку #ЗНАЧ. В общем, в строке ввода получается следующее:
=Переворачиватель_9000('[для ведомости Ныгда.xlsx]Лист1'!C$3:C$21;C$21;C3)
Причем делает он так вплоть до массива C6-C21.
Я уже с пол часа искренне не могу понять: что не так? В формулах есть еще одна - "Переворачиватель" - она попроще, но с ней та же самая проблема.
Буду признателен, если объясните: что тут не так?
Есть две таблицы Эксель (приложу их) и пользовательская формула, которую составил в VBA:+
Код |
---|
Function Переворачиватель_9000(массив_исх, последняя, текущая) Dim индекс Dim массив Dim С Dim СВ Dim В Dim ЮВ Dim Ю Dim ЮЗ Dim З Dim СЗ Dim ПО Dim ПР Dim О Dim Д Select Case TypeName(массив_исх) Case "Range" массив = массив_исх.Value Case "Variant()" массив = массив_исх End Select индекс = WorksheetFunction.Index(массив, последняя.Row - текущая.Row + 1, 1) С = " северном " СВ = " северо-восточном " В = " восточном " ЮВ = " юго-восточном " Ю = " южном " ЮЗ = " юго-западном " З = " западном " СЗ = " северо-западном " ПО = " по течению." ПР = " против течения." О = " от " Д = " до " Переворачиватель_9000 = IIf(Replace(Replace(Replace(Replace(Replace(Replace(индекс, С, Ю), СВ, ЮЗ), В, З), ЮВ, СЗ), ПО, ПР), Д, О) = индекс, Replace(Replace(Replace(Replace(Replace(Replace(индекс, Ю, С), ЮЗ, СВ), З, В), СЗ, ЮВ), ПР, ПО), О, Д), Replace(Replace(Replace(Replace(Replace(Replace(индекс, С, Ю), СВ, ЮЗ), В, З), ЮВ, СЗ), ПО, ПР), Д, О)) End Function |
=Переворачиватель_9000('[для ведомости Ныгда.xlsx]Лист1'!C$3:C$21;C$21;C3)
Причем делает он так вплоть до массива C6-C21.
Я уже с пол часа искренне не могу понять: что не так? В формулах есть еще одна - "Переворачиватель" - она попроще, но с ней та же самая проблема.
Буду признателен, если объясните: что тут не так?
Angels show up in the Strangest of places