
Nemůžeš poslat vzorek ???

Aplikaciu pochopitelne nemozem prilozit. Je nieco nejasne v popise?
Snad este dodam, ze hodnota do B26 na liste1 je vlozena fciou:
=POZVYHLEDAT(PRAVDA;INDEX(JE.PRÁZDNÉ(J3:J34);0;0);0)

1 )Response = MsgBox("Chyba na Liste1" & vbcrlf & vbcrlf & "Chyba je v bunce: C" & worksheets("List1").range("b26") , vbExclamation)
2) tuhle cast jsem moc nepochopil - tato procedura je svazana s listem a zobrazi se tedy presne tehdy, kdy ma (pri aktivaci listu - u vas asi List2) - nicmene neni problem zmenit aktivni list na List1 (asi by to vazne chtelo vzorek, abych to pochopil :-))

Dakujem pekne za odpoved a za riesenie. Podla bodu 1 je to presne to co potrebujem, je to OK.
K bodu 2 este snad dovysvetlenie. Som na liste1 a kliknem mysou na list5. Na liste5 sa mi aktivuje procedura s uvedenym MsgBox. Po kliknuti na Ok v MsgBox, sa mi z uvedenej procedury znovu vyberie list1. A teraz by som potreboval, aby presne ta ista sprava ako bola v MsgBox sa zobrazila aj na tomto vybranom liste1. Snad je to jasnejsie

aha - pak staci tu samou proceduru vlozit i do modulu Listu1 (jen pozor, ze to bude zcela nova procedura, ktera spusti pri kazde aktivaci Listu1 - je dobre si rozmyslet, co ma vlasnte delat a kdy...)

To, aby sa zakazdym spustala pri aktivovani listu1 "nova procedura" nechcem. Potrebujem uzivatela len upozornit aby doplnil chybajucu informaciu na liste1, v C na riadku uvedenom v b26.
Neslo by miesto MsgBox v procedure s MsgBox na liste5 doplnit vyfarbenie prislusnej bunky v stlpci A na liste1 podla B26 a toto vyfarbenie zrusit zapisom dat do zodpovedajucej bunky v stlpci C?
Poki(17.12.2010 10:40)citovat#003546
A nebylo by lepsi misto MsgBox uukazat InputBox, do ktereho by uzivatel rovnou zapsal spravnou hodnotu, ktera by se ulozila do potrebne bunky?

Do tej bunky moze vkladat roznym sposobom, priamo zapise, skopiruje, alebo mysou presunie z inej bunky. Takze neviem, ci by to bolo vhodne cez InputBox
Poki(17.12.2010 12:34)citovat#003551
No nevim, pokud se pri nejake procedure zjisti, ze je nekde chyba, mohla by ta procedura rovnou zajistit to, aby uzivatel chybu opravil.
Ale chapu, ze nerozumim, k cemu cely sesit slouzi a kde jsou jeho uskali - dost tezko se to takhle 'nasucho' odhaduje...

Je mi jasne, ze pochopit vsetky suvislosti bez znalosti komplexnej ulohy je tazke. Ale v kratkosti.
Na liste5 spustenie procedury ma zaistit zotriedenie udajov a nasledne nieco vykonat. Avsak zotriedenie je zmysluplne len vtedy, ak udaje na liste1 su vyplnene v pozadovanom rozsahu. Preto na zaciatku procedury na liste5 je kontrola, ci prislusne udaje su vyplnene - to je to, co som potreboval. Ak nie su vyplnene vrati uzivatela na list1 a ukaze mu, v ktorom riadku ich treba doplnit.
Teraz som to v procedure na liste5 poriesil tak, ze som pred MsgBox vlozil (podla mna nie celkom elegantne) prikaz: Worksheets("List1").Range("A" & Worksheets("List1").Range("B33")).Interior.ColorIndex = 3, ktorym farebne oznacim pozadovany riadok na liste1.
V kazdom pripade dakujem za cas venovany tomuto vlaknu a hlavne za vyriesenie bodu 1, s ktorym som mal problemy a stale konstrukcii tej spravy nie celkom rozumiem.