Excel - VBA - Cells.Find

From: KaCe (cecil@volny.cz)
Date: 27. 01. 2003, 10:29 CET


Dobry den,
potreboval bych od vas "znalejsich" poradit s timto:

potrebuji vytvorit makro, ktere by mi v tabulce seznamu zakazniku vyhledalo
jmeno a pomoci ActiveCell.Offset (0,-1) vracelo prislusne cislo zakaznika v
predchazejicim sloupci.

K vyhledavani pouziju:

Cells.Find(What:="ZAKAZNIK", After:=ActiveCell, LookIn:=xlValues, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False) _
        .Activate

Zakaznik (cast jmena) se muze vyskytovat v tabulce nekolikrat, takze pokud
budu chtit ziskat vsechna jeho cisla a nebudu na konci tabulky pouziju:

Cells.FindNext(After:=ActiveCell).Activate

S cim si ale nevim rady je jak osetrit to pokud zadam jmeno zakaznika, ktere
se v tabulce vubec nevyskytuje.
Kdyz pouziji v excelu vyhledavani a zadam jmeno ktere v tab. neni, tak mi to
oznami hlaska:
"Aplikace MS Excel nemuze najit hledana data.....bla,
bla..........zkontrolujte zadana data a zkuste to znovu."
 Pokud ale vyhledavam pomoci makra:

Cells.Find(What:="NEEXISTUJICI_ZAKAZNIK", After:=ActiveCell,
LookIn:=xlValues, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,
MatchCase:=False) _
        .Activate,

tak mi to vyhodi:

"Run-time error '91':
Object variable or With block variable not set."

- v mem pripade bych ale potreboval, aby to - pokud zakaznik neexistuje,
vratilo cislo zakaznika = 0.


Predem diky vsem za rady.

KaCe
--
cecil@volny.cz



This archive was generated by hypermail 2.1.2 : 27. 01. 2003, 10:29 CET