< návrat zpět

MS Excel


Téma: Adresa v MsgBox rss

Zaslal/a 16.12.2010 21:39

Po kliknuti mysou na prislusny list sa mi aktivuje nasledovne makro:
Private Sub Worksheet_Activate()
If Worksheets("List2").Range("B6") > Worksheets("List1").Range("B25") Then
Worksheets("List1").Activate
Worksheets("List1").Select
Response = MsgBox("Chyba na Liste1", vbExclamation)
Exit Sub
End If
Potreboval by som poradit:
1. Ako do MsgBox zaradi adresu chybnej bunky, ked viem, ze chyba je v stlpci C a cislo riadku mam na Liste1 v bunke B26 (Ak B26=5, potom v Msg Box sa vo vyssie uvedenom texte este zobrazi C5).
2. MsgBox sa zobrazi na danom liste, kde je vyssie uvedene makro. Potreboval by som, keby sa MsbBox po vybere listu1 (Worksheets("List1").Select) zobrazilo prave na tomto liste ( na List1) - neviem, ci to vobec ide
Dakujem

Zaslat odpověď >

Strana:  1 2   další »
#003531
avatar
Nemůžeš poslat vzorek ???citovat
#003532
avatar
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)citovat
icon #003534
Poki
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 :-))citovat
#003539
avatar
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 jasnejsiecitovat
icon #003540
Poki
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...)citovat
#003545
avatar
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?citovat
icon #003546
Poki
A nebylo by lepsi misto MsgBox uukazat InputBox, do ktereho by uzivatel rovnou zapsal spravnou hodnotu, ktera by se ulozila do potrebne bunky?citovat
#003549
avatar
Do tej bunky moze vkladat roznym sposobom, priamo zapise, skopiruje, alebo mysou presunie z inej bunky. Takze neviem, ci by to bolo vhodne cez InputBoxcitovat
icon #003551
Poki
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...citovat
#003552
avatar
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.citovat

Strana:  1 2   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje