Страницы: 1
RSS
Работа с закрытыми книгами... [Д_Р]
 
[Д_Р]
День добрый - есть такая формула...
=VLOOKUP2('H:\Users\Дмитрий\Desktop\0306\svod\Form № 2\[Сводная форма № 2(ВМЗ).xls]ГП '!$A$6:$BT$280;1;$A$1;1;D166)

при расчетах появляются #ЗНАЧ! (потому что книга закрыта), при этом

=ВПР($A$1;'H:\Users\Дмитрий\Desktop\0306\svod\Form № 1\[Форма № 1 показатели (свод) не трогать!.xls]107-157'!$A$4:$FL$100;105;ЛОЖЬ) - работает великолепно при закрытой книге...

есть вариант доработать vlookup2? Для меня лично нет проблемы открыть файл, но руководству сложновато это объяснить(
заранее спасибо!
 
[The_Prist]
Переделать можно. Почитайте тут:
http://excel-vba.ru/forum/viewtopic.php?t=108
 
[Д_Р]
Прочитал... тупо проставил Variant - не катит... не силен я пока еще в vba

щас соответственно это выглядит вот так...

Код
Function VLOOKUP2(Table As Range, SearchColumnNum As Variant, SearchValue As Variant, _
N As Variant, ResultColumnNum As Variant)
Dim i As Variant
Dim iCount As Variant

For i = 1 To Table.Rows.Count
If Table.Cells(i, SearchColumnNum) = SearchValue Then
iCount = iCount + 1
End If
If iCount = N Then
VLOOKUP2 = Table.Cells(i, ResultColumnNum)
Exit For
End If
Next i
End F unction
 
[The_Prist]
Не понял, где Вы заменили на Variant(похоже везде, где не надо, а где надо нет). Как-то так:

Код
Function VLOOKUP2(Table As Variant, SearchColumnNum As Long, SearchValue As Variant, _
N As Long, ResultColumnNum As Long)
Dim i As Long, iCount As Long
Select Case TypeName(Table)
Case "Range"
For i = 1 To Table.Rows.Count
If Table.Cells(i, SearchColumnNum) = SearchValue Then
iCount = iCount + 1
End If
If iCount = N Then
VLOOKUP2 = Table.Cells(i, ResultColumnNum)
Exit For
End If
Next i
Case "Variant()"
For i = 1 To UBound(Table)
If Table(i, 1) = SearchValue Then iCount = iCount + 1
If iCount = N Then
VLOOKUP2 = Table(i, ResultColumnNum)
Exit For
End If
Next i
End Select
End F unction


Сразу говорю - не тестировал, писал прямо в форум. Но должно работать.
 
[Д_Р]
уважаемый The_Prist!
Низко кланюсь!!! все отлично работает (li на i)
Страницы: 1
Наверх