Robíte 2 základné chyby.
1. Základná chyba : Vy tam máte v bunkách hodnotu, ktorá je ČÍSLO. V Exceli keď sa odkazujete na Sheets, tak táto funkcia Sheets (alebo Worksheets) je tzv. Preťažená. To znamená, že jej parameter môže mať rôzny typ, a podľa toho aký typ má, taký typ funkcie sa vykoná. Vy keď máte teda v bunke číslo, a pošlete ho ako parameter do funkcie Sheets, ona zistí še sa jedná o číslo, tak to považuje za INDEX ! A list s takýmto indexom samozrejme neezistuje. Vy potrebujete použiť tú druhú preťaženú funkciu Sheets, ktorá očakáva identifikátor ako TEXT, pretože názov listu je text. Toto rieši problém s odkazom - pretypovanie čísla na text.
On Error Resume Next
Sheets(CStr(Cells(1, 1).Value)).Activate
If Err <> 0 Then MsgBox ("List neexistuje." & vbNewLine & Cells(1, 1).Value)
On Error GoTo 0
2. Základná chyba : Je ešte väčšia ako prvá. Nehnevajte sa na mňa, vy vôbec nečítate, čo Vám píšem. A vôbec neodpovedáte na to čo sa pýtam. Prosil som Vás o
presný podrobný popis toho čo sa bude diať a čo očakávate aby sa stalo. Dokonca som Vám dal aj príklad ako si predstavujem ten popis. Ja viem že je to účtenka, ale chcel som od Vás dostať informácie, kam sa zapisuje nové číslo účtenky (alebo sa nazapisuje, vytvára sa), kam sa ukladá posledné číslo. Čo sa ukladá/číta do/z tých prázdnych buniek v kóde. Pri každom vytvorení novej účtenky sa vytvorí aj nové tlačítko ? Odkiaľ sa budú brať názvy tlačítok ? Kde chcete ukladať, ktorý list (účtenka) patrí ktorému tlačítku ? Tie tlačítka a listy sa už nikdy mazať/meniť nebudú? Budú sa kopírovať aj iné bunky na nové listy? Nemôžete dať ako príklad súbor, kde uvediete jedno číslo, zlý kód, prázdne strany, žiadne informácie o fungovaní, a čakať, že Vám niekto pomôže. Ako vidíte, snaha o pomoc je, inak by som nenapísal 4x toľko čo Vy (a to má byť opačne). Dajte si kľudne aj hodinu čas na popísanie toho čo chcete. Ja som venoval premýšľaniu o tom čo asi tak chcete celým zošitom dosiahnuť o dosť viac.
A nebojte sa dať viac vyplnenú prílohu. Firemné tajné data prepíšte vymyslenými (aj z inej oblasti), čísla zákazok prepíšte tiež, služby/tovar si vymyslite. To nemôže byť predsa problém, vymyslieť si údaje na jednom liste "start" a jednom či dvoch listoch s účtenkami.
PS: Myslite stále na to, že aj tento môj kvázi-kritický príspevok, je iba snaha Vám pomôcť
citovat