Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VLookup / 25 сообщений из 25, страница 1 из 1
26.12.2006, 16:11:20
    #34225605
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Значение переменной задается VLookup, прерывается процедура и выходит сообщение
Sub of Function not defined. какую referentces включить?
...
Рейтинг: 0 / 0
26.12.2006, 16:15:03
    #34225615
adv
adv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
VLookup это хто?

код показывайте.
...
Рейтинг: 0 / 0
26.12.2006, 16:18:45
    #34225626
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
advVLookup это хто?

код показывайте.

Private Sub Worksheet_Activate()
Dim a
For i = 3 To 9 Step 1
For s = 15 To 179 Step 1
If Лист1.Cells(s, i) = "" Then
a = VLookup(Лист1.Cells(s, i), Лист4.Cells(1, 1), 2, False)
End If
Next s
Next i
End Sub
...
Рейтинг: 0 / 0
26.12.2006, 16:21:45
    #34225633
adv
adv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
а почему на форум акса?
...
Рейтинг: 0 / 0
26.12.2006, 16:24:50
    #34225645
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
advа почему на форум акса?
Данные таблицы акса экспортируются в шаблон EXEL на временный лист t, потом с этого листа выбираются данные в шаблон, лист удаляется и шаблон заполнен
Больше не знаю где спросить (если честно)
...
Рейтинг: 0 / 0
26.12.2006, 16:37:41
    #34225699
natalitvinenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Этот код - он в Аксе или в Excel? Если в Аксе, то что - то тут не так. Посмотрите поиском по форуму ("Excel экспорт" или что - то в этом роде), не обращаются так в Аксе с объектами из Экселя...
...
Рейтинг: 0 / 0
26.12.2006, 16:43:56
    #34225728
natalitvinenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
И вообще - тут формат функции не нарушен? Вот он тут, например http://www.ozgrid.com/Excel/excel-vlookup-formula.htm . Получается, Вы сначала проверяете, не является ли ячейка пустой, а потом ищете эту пусту в другой ячейке?
...
Рейтинг: 0 / 0
26.12.2006, 16:44:13
    #34225730
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Переменной присваиваю значение VLookup(). Прерывается процедура Sub of Function not defined.
В чем дело?
...
Рейтинг: 0 / 0
26.12.2006, 16:45:18
    #34225733
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreevaПеременной присваиваю значение VLookup(). Прерывается процедура Sub of Function not defined.
В чем дело?

Private Sub Worksheet_Activate()
Dim a
For i = 3 To 9 Step 1
For s = 15 To 179 Step 1
If Лист1.Cells(s, i) = "" Then


a = VLookup(Лист1.Cells(s, i), Лист4.Cells(1, 1), 2, False)
End If
Next s
Next i
End Sub
...
Рейтинг: 0 / 0
26.12.2006, 16:53:22
    #34225764
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
natalitvinenkoИ вообще - тут формат функции не нарушен? Вот он тут, например http://www.ozgrid.com/Excel/excel-vlookup-formula.htm . Получается, Вы сначала проверяете, не является ли ячейка пустой, а потом ищете эту пусту в другой ячейке?

Поиск пустых ячеек для того чтобы потом вставить значение переменной в пустую ячейку
...
Рейтинг: 0 / 0
26.12.2006, 16:58:34
    #34225781
natalitvinenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Не понимаю ;-( Функция VlookUp ищет первое(Лист1.Cells(s, i)) в интервале второе(Лист4.Cells(1, 1)) - то есть пустоту во втором?
...
Рейтинг: 0 / 0
26.12.2006, 17:28:12
    #34225886
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreeva tuandreevaПеременной присваиваю значение VLookup(). Прерывается процедура Sub of Function not defined.
В чем дело?

Private Sub Worksheet_Activate()
Dim a
For i = 3 To 9 Step 1
For s = 15 To 179 Step 1
If Лист1.Cells(s, i) = "" Then


a = VLookup(Лист1.Cells(s, i), Лист4.Cells(1, 1), 2, False)
End If
Next s
Next i
End Sub
а это что? a = VLookup(Лист1.Cells(s, i), Лист4.Cells(1, 1), 2, False)
должен быть диапозон причем количество столбцов д.б. не меньше цифры в третьем аргументе
...
Рейтинг: 0 / 0
26.12.2006, 20:34:44
    #34226264
VLookup
VLookup - функция рабочего листа. Ее, как и длугие в модуле Excel-я нужно вызывать так:
а = WorksheetFunction.VLookup...
...
Рейтинг: 0 / 0
27.12.2006, 08:39:21
    #34226704
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Это ссылка на значения ячейки А1(Что ищем)
...
Рейтинг: 0 / 0
27.12.2006, 09:22:44
    #34226790
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreevaЭто ссылка на значения ячейки А1(Что ищем)
читайте справку по функции ВПР(Vlookup)
повторюсь там д.б. диапазон
...
Рейтинг: 0 / 0
27.12.2006, 09:26:53
    #34226802
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
Синтаксис

ВПР(искомое_значение;инфо_таблица;номер_столбца;интервальный_просмотр)

Искомое_значение   - это значение, которое должно быть найдено в первом столбце массива. 
Искомое_значение может быть значением, ссылкой или текстовой строкой.

Инфо_таблица   - это таблица с информацией, в которой ищутся данные. Можно использовать
ссылку на интервал или имя интервала, например, БазаДанных или Список. 

Если интервальный_просмотр имеет значение ИСТИНА, то значения в первом столбце аргумента
инфо_таблица должны быть расположены в возрастающем порядке: ..., -2, -1, 0, 1, 2, ..., A-Z, 
ЛОЖЬ, ИСТИНА; в противном случае функция ВПР может выдать неправильный результат. Если 
интервальный_просмотр имеет значение ЛОЖЬ, то инфо_таблица не обязана быть сортированной.


Данные можно упорядочить следующим образом: в меню Данные выбрать команду Сортировка и
установить переключатель По Возрастанию.


Значения в первом столбце аргумента инфо_таблица могут быть текстами, числами или 
логическими значениями.


Регистр не учитывается (т. е. строчные и заглавные буквы не различаются). 

Номер_столбца   - это номер столбца в массиве инфо_таблица, в котором должно быть найдено 
соответствующее значение. Если номер_столбца равен 1, то возвращается значение из первого 
столбца аргумента инфо_таблица; если номер_столбца равен 2, то возвращается значение из 
второго столбца аргумента инфо_таблица и так далее. Если номер_столбца меньше 1, то функция 
ВПР возвращает значение ошибки #ЗНАЧ!; если номер_столбца больше, чем количество столбцов 
в аргументе инфо_таблица, то функция ВПР возвращает значение ошибки #ССЫЛ!.

Интервальный_просмотр   - это логическое значение, которое определяет, нужно ли, чтобы ВПР 
искала точное или приближенное соответствие. Если этот аргумент имеет значение ИСТИНА или 
опущен, то возвращается приблизительно соответствующее значение; другими словами, если 
точное соответствие не найдено, то возвращается наибольшее значение, которое меньше, чем 
искомое_значение. Если этот аргумент имеет значение ЛОЖЬ, то функция ВПР ищет точное 
соответствие. Если таковое не найдено, то возвращается значение ошибки #Н/Д.

Замечания 

Если ВПР не может найти искомое_значение и интервальный_просмотр имеет значение ИСТИНА, то 
используется наибольшее значение, которое меньше, чем искомое_значение.


Если искомое_значение меньше, чем наименьшее значение в первом столбце аргумента 
инфо_таблица, то функция ВПР возвращает значение ошибки #Н/Д.


Если ВПР не может найти искомое_значение и интервальный_просмотр имеет значение ЛОЖЬ, то 
ВПР возвращает значение ошибки #Н/Д. 


Примеры



На приведенном рабочем листе, где интервал A4:C12 имеет имя Интервал:

ВПР(1;Интервал;1;ИСТИНА) равняется 0,946

ВПР(1;Интервал;2) равняется 2,17

ВПР(1;Интервал;3;ИСТИНА) равняется 100

ВПР(0,746;Интервал;3;ЛОЖЬ) равняется 200

ВПР(0,1;Интервал;2;ИСТИНА) равняется #Н/Д, поскольку 0,1 меньше, чем наименьшее значение в столбце A

ВПР(2;Интервал;2;ИСТИНА) равняется 1,71
...
Рейтинг: 0 / 0
27.12.2006, 10:19:29
    #34226948
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Анатолий ( Киев )VLookup - функция рабочего листа. Ее, как и длугие в модуле Excel-я нужно вызывать так:
а = WorksheetFunction.VLookup...

error '1004'
Невозможно получить свойство VLookup класса WorkSheetFunction
...
Рейтинг: 0 / 0
27.12.2006, 11:16:08
    #34227178
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreeva Анатолий ( Киев )VLookup - функция рабочего листа. Ее, как и длугие в модуле Excel-я нужно вызывать так:
а = WorksheetFunction.VLookup...

error '1004'
Невозможно получить свойство VLookup класса WorkSheetFunction
при правильном синтаксе и правильном указании всех аргументов ошибки не будет

tuandreevaДанные таблицы акса экспортируются в шаблон EXEL на временный лист t, потом с этого листа выбираются данные в шаблон, лист удаляется и шаблон заполнен
очень абстрактное описание задачи

вот посмотри пример работы Vlookup
...
Рейтинг: 0 / 0
27.12.2006, 11:42:26
    #34227304
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
error '9'
Subscript out of range

НЕ пойму, в чем дело?
...
Рейтинг: 0 / 0
27.12.2006, 11:54:39
    #34227378
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreevaerror '9'
Subscript out of range

НЕ пойму, в чем дело?
покажи где
...
Рейтинг: 0 / 0
27.12.2006, 13:58:37
    #34227890
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
a = WorksheetFunction.VLookup(Worksheets("Лист1").Range("B15").Value, Worksheets("Лист4").Range("A1:I169"), 2, False)

А ваш пример работает нормально
...
Рейтинг: 0 / 0
27.12.2006, 14:03:47
    #34227910
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreevaa = WorksheetFunction.VLookup(Worksheets("Лист1").Range("B15").Value, Worksheets("Лист4").Range("A1:I169"), 2, False)

А ваш пример работает нормально
Все понятно, ошибка в названии листов.
Другой вопрос:
Как Worksheets("Лист4").Range("A1:I169") обозвать при помощи Cells?
...
Рейтинг: 0 / 0
27.12.2006, 14:23:23
    #34227999
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
tuandreeva tuandreevaa = WorksheetFunction.VLookup(Worksheets("Лист1").Range("B15").Value, Worksheets("Лист4").Range("A1:I169"), 2, False)

А ваш пример работает нормально
Все понятно, ошибка в названии листов.
Другой вопрос:
Как Worksheets("Лист4").Range("A1:I169") обозвать при помощи Cells?

в меню "сервис"->"ПАРАМЕТРЫ" вкладка "общее" поставь галку стиль ссылок R1C1 и тогда будешь знать нужный тебе адрес

а
Код: plaintext
Range("A1:I169")  = Range(Cells( 1 ,  1 ), Cells( 169 ,  9 ))
...
Рейтинг: 0 / 0
27.12.2006, 14:30:04
    #34228029
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Спасибо БОЛЬШОЕ
...
Рейтинг: 0 / 0
27.12.2006, 15:00:28
    #34228155
tuandreeva
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VLookup
Private Sub Worksheet_Activate()
Dim a
For i = 3 To 9 Step 1
For s = 15 To 179 Step 1
If Лист1.Cells(s, i) = "" Then
a = WorksheetFunction.VLookup(Worksheets("0503130").Range(Cells(s, 2)).Value, Worksheets("t").Range(Cells(1, 1), Cells(169, 9)), 2, False)
Лист1.Cells(s, i) = a
End If
Next s
Next i
End Sub
Диапазон неверный?
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VLookup / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]