|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
Есть переменная z Какой функцией ее можно проверить на предмет - есть ли в массиве А1:В366 значение равное z (числовое или символьное) Тупо перебирать значения на соответсвие не хочется однака! Есть ли что-то более радостное, о гуру VBA? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2003, 15:47 |
|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
Фунция ВПР - ищи в хелпе. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2003, 16:36 |
|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
Если, как я понял, нужно найти значение в диапазоне листа то сделай следующее: 1. поставь макрорекордер на запись 2. выдели свой фрагмент 3. примени команду "Правка"-"Найти" 4. посмотри полученный код Будет примерно следущее Range("A1:K30").Select Selection.Find(What:="5", After:=ActiveCell, LookIn:=xlValues, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _ .Activate ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2003, 17:33 |
|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
4 23a77\r было уже про find ... |
|||
:
Нравится:
Не нравится:
|
|||
28.10.2003, 18:51 |
|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
Проблема в том, что запуск кода, полученного из макроса нормально перебирает значения (подставляет переменную, проверяет на соответствие, если соответствие найдено - делает нужную операцию) но если он не находит соответствие в массиве - то все грохается Workbooks("FileRNMprepareAll.xls").Activate Columns("F:F").Select Selection.Find(What:=Z, After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=True).Activate If ActiveCell = Z Then Workbooks("FileRNMprepareAll.xls").Activate ActiveCell.Next.Select Selection.Copy Workbooks.Open c Cells(1, 6).Select ActiveSheet.Paste ActiveWorkbook.Save ActiveWindow.Close Else Cells(1, 10).Select ActiveCell.FormulaR1C1 = "dddddd" End If Это кусок цикла в котором меняется переменная Z - вот в случае отсутствия соответствия выделяется цветом Selection.Find(What:=Z, After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=True).Activate Типа здесь ошибка. Как от нее увернуться при использовании такой функции - непонятно, поэтому я пытаюсь понять - или надо дописать условия к этой функции или лучше использовать что-то другое ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2003, 10:04 |
|
Проверка - есть ли в массиве знач = переменной
|
|||
---|---|---|---|
#18+
dim R as range set R=Selection.Find(What:=Z, After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=True) If R is nothing then .... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.10.2003, 11:18 |
|
|
start [/forum/topic.php?fid=60&msg=32307903&tid=2170524]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
61ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 333ms |
total: | 486ms |
0 / 0 |