Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  284 285 286 287 288 289 290 291 292   další » ... 302

No ja som to samozrejme čítal. Dal som to tak do pľacu pre všetkých na nejaký ten pokus, pretože mne to vytlačí na normálnej tlačiarni, ale ak to dám do PDF cez PDFCreator, tak mi to neviem prečo rozdelí na jedno PDF prvý list, a ostatné listy do druhého PDF. Preto som to dal na vyskúšanie ostatným.

PS: Pre tých čo to nepoznajú, tak PDFCreator je vyrtuálna tlačiareň do PDF. Tvári sa ako tlačiareň, ale pritom ukladá to čo chcete vytlačiť do PDF. Je to dobré na pokusy bez nákladov... Export do PDF je niečo iné.

Treba vyskúšať:
Sub Tlac()
' tisk tiskárna
Dim ws As Worksheet
For Each ws In ActiveWindow.SelectedSheets
Application.PrintCommunication = True
ws.PageSetup.PrintArea = "$A$1:$BC$38"
Application.PrintCommunication = False
With ws.PageSetup
.PaperSize = 70
.Orientation = xlPortrait
.BlackAndWhite = True
.FitToPagesWide = 1
.FitToPagesTall = 1
.PrintQuality = 600
End With
Next ws
Application.PrintCommunication = True
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
End Sub

Týmto finančným veciam vôbec nerozumiem, ale keď pozerám na tie vzorce, hneď ma napadá:
-Vo všetkých listoch sa v stĺpci D počíta s tým, že sa začína 1. Januára, neznámeho roku. Každý riadok sa vkladá počet dní mesiaca. No ale keď to má byť také presné, tak nemôžeme opomenúť na 29 dňový február, a vysokú pravdepodobnosť, že sa úver nebude čerpať presne od 1.1.XXXX.
-V poslednom liste je už počítané stále iba s 30 dňami.

To je len taká poznámka, pretože fakt netuším, ako tieto finančné výpočty fungujú, možno to tak proste má byť. A makrom by sa takáto tabuľka snáď dala vytvoriť 4

Keďže Mapa znakov vo Win udáva vľavo dole HEX kód, tak sa môže použiť ten:
ChrW(&HF8) 'To "&H" je značka pre HEX kód, a to "F8" je skrátené "00F8" z Mapy znakov

Worksheets("Sheet1").Shapes(1).OLEFormat.Object.Text = ChrW(248) & " niečo"
Samozrejme je vhodné si .Shapes(1) premenovať

EDIT:
Prvok si premenuj tak , že mu nastav makro na toto:
Sub Premenuj()
Dim o As Object
Set o = ActiveSheet.Shapes(Application.Caller)
o.Name = "tbPriemer"
End Sub

a klikni na prvok. Potom tomu prvku makro zruš. A už sa volá "tbPriemer". Ja mám medzi prvkami rád poriadok, a ja chcem určovať ako sa ktorý volá, najmä ak ich je viac rovnakých.
Potom to zameníš za:
Worksheets("Sheet1").Shapes("tbPriemer").OLEFormat.Object.Text = ChrW(248) & " niečo"

Vyskúšajte reset Excelu, pri vypnutom Exceli, v Regedit premenujte kľúč:
HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Excel
na
HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Excel.old
Excel si tento kľúč vytvorí znovu "čistý".
Spustite Excel, vyskúšajte. Bez problémov to môžete vrátiť naspäť tak, že ten novovytvorený kľúč zmažete, a "Excel.old" premenujete naspäť na "Excel".

PS: To "15.0" v kľúči je Office 2013, pre 2007 bude menšie (neviem z hlavy, možno 13.0) číslo.

V podmienenom formátovaní 5ikon, nieje možné použiť relatívne odkazy, potrebné na adresáciu bunky, ktorú práme formátujeme, tak ako je to pri normálnom podmienenom formátovaní. Nejde použiť ani zástup pomocou ROW()/COLUMN() spolu s INDEX, ani Definovaný názov. Vždy to naraz ovláda celú oblasť. Preto som vymyslel nasledovný spôsob:
- Najskôr si prvý krát pripravíme podmienené formátovanie pre každú bunku zvlášť, priloženým makrom.
- Nezabudneme na potrebné úpravy rozsahov v OnChange, aj pre NewData, aj pre OldData.
- V OnChange som urobil malú fintu, aby som získal po zmene pôvodné data, a tie nakopíroval do OldData.

Funguje to tak ako popisujete. Pri zmene z oblasti, sa prenesú všetky do tej doby staré data na OldData, a "vybaví" sa pre každú bunku zvlášť formátovanie.

Áno, bol som si takmer istý, že presne tomuto nebudete rozumieť 5
Pole UF je pole zadaných dát od užívateľa. Tieto dáta sa potom zložia do reťazcov pre filter. Pretože asi bude jednoduchšie, ak budete mať na výber zvlášť znamienka, a hodnoty zadáte aké potrebujete. Keďže sa teda každý jednotlivý filter skladá z 2 stĺpcov (znamienko, data), ale jednotlivý filter je len 1 stĺpec, potrebujeme si vypočítať ktorá časť poľa UF (8 stĺpcov) patrí k práve spracovávanej časti filtra (4 stĺpce)

UF(y, (x - 1) * 2 + 1) vráti znamienko
UF(y, (x - 1) * 2 + 2) vráti dáta filtra

x - je vodorovná súradnica (dosaďte si čísla 1 až 4 a zistíte ako to funguje)
y - je zvislá súradnica

If x = 4 Then dat = CStr(CDbl(UF(y, (x - 1) * 2 + 2))) Else dat = UF(y, (x - 1) * 2 + 2)
Ak spracovávame dátum (X = 4) tak CDbl prevedie dátum na číslo, a CStr to číslo prevedie na string. Ak je X <> 4 tak dostaneme hodnotu rovno z UF.

FF(y, x) = IIf(IsEmpty(UF(y, (x - 1) * 2 + 1)), IIf(IsEmpty(UF(y, (x - 1) * 2 + 2)), Empty, "=" & dat), UF(y, (x - 1) * 2 + 1) & IIf(IsEmpty(UF(y, (x - 1) * 2 + 2)), Empty, dat))
FF je pole hotových reťazcov pre filter, a tie reťazce vypočítame cca takto:
JePrázdneZnamienko = IsEmpty(UF(y, (x - 1) * 2 + 1))
JePrázdneFilterData = IsEmpty(UF(y, (x - 1) * 2 + 2))
Empty = prázdna bunka/reťazec

Ak JePrázdneZnamienko=True tak
------ ak JePrázdneFilterData=True tak vráť Empty
------ ak JePrázdneFilterData=False tak vráť "=" & dat
ak JePrázdneZnamienko=False tak
------ vráť znamienko &
----------------------- ak JePrázdneFilterData=True tak Empty
----------------------- ak JePrázdneFilterData=False tak dat

To som samozrejme nedal zbrucha, ale najskôr som si pri návrhu vytvoril pomocné premenné, ktoré som po zfunkčnení, odstránil a nahradil rovno tým, čo reprezentujú. Urobil som to len kvôli o niečo kratšiemu kódu.

No a zabezpečuje to to, že aj keď nezadáte do znamienka nič ale dáta áno, vloží sa namiesto ničoho "=" + dáta. Ak zadáte znamienko, ale nezadáte dáta, vloží sa len znamienko (pre prípad testu nevyplneného údaju), ak nieje ani znamienko ani data, nevloží sa nič (Empty), ak sú oboje, vložia sa oboje spolu.

PS: Ak to bude pre Vás ľahšie pochopiteľné, tak Vám to vrátim do stavu s pomocnými premennými.

No takže mám to upravené, funkčné. Okrem toho, že vzorec nedokáže vrátiť EMPTY (BLANK), tak tam bol ešte jeden zákerný problém v IIF. Vyriešené.
Chcete aj popis makra ? (Príliš sa mi nechce, ale keby ste naliehal ...)

A a teraz, po mojom trápení, sa potrápte Vy, a dajte čo najpodrobnejší popis o tých súboroch, z ktorých by ste tam ešte chceli čerpať ďalšie data. Ešte raz opakujem, čo najpodrobnejší. Teda napr. (okrem iného):
-kde budú uložené tie iné zošity?
-bude ich premenlivý počet?
-budú mať nemenné názvy?
-ak budú názvy menné, podľa akého vzorca sa budú meniť?
-budú obsahovať meniaci sa počet riadkov?
-budú mať rovnakú štruktúru ako tento zošit?
-budú mať rovnaký typ dát?
-budú mať rovnaký počet a usporiadanie stĺpcov?

Uvidíme podľa toho čo popíšete, či to vôbec bude riešiteľné, a či sa na to dám, pretože popravde, zatiaľ netuším ako by sa to dalo (podľa tipovaných odpovedí na dané otázky).

Takto by som si predstavoval zjednodušenie zadávania filtra pre užívateľa (ten červený filter bude schovaný)). Problém je, že to funguje iba čiastočne.

Preto prosím o radu kolegov, prečo mi to neberie korektne v úvahu dátum, ak vo filtri nieje iná podmienka ? Akonáhle je tam okrem dátumu napr. aj nejaká podmienka veku, hneď to funguje. Ale samotný dátum nie.

@A ještě jedna věc mě napadla když bude více zdrojových souborů aby se výsledky načítali do jednoho listu (do buněk by se napsaly cesty k souborům a z těch by se načetly data)?
Toto bude zložitejšie ako si myslíte, neviem či sa mi s tým bude chcieť paprať. Vy viete koľko vzorcov na získanie dát máte vložiť ? Viete ako sa budú volať súbory ? Viete aké názvy budú mať listy? Viete koľko listov bude ? To sú nesmierne komplikácie na získanie neznámeho počtu dát z neznámeho počtu listov, neznámych názvov listov, neznámeho počtu súborov a ich názvov.

PS: zmenil som makro tak, že sa data zoskupia len keď sa aktivuje list Filter, a ten sa prepočíta, ak je zmenená bunka vo filtri.

EDIT: Takže problém je pravdepodobne v tom, že vzorec nedokáže vrátiť hodnotu Empty, ale iba "" a to robí vo filtri galibu. Pracujem snáď na riešení.
A v tomto poslednom súbore som zabudol ešte po otvorení aktualizovať, a po otvorení to píše chybu, ale to neva, opravím v ďalšej verzii - ignorovať...

Po otvorení zošitu, alebo každom aktivovaní listu Hárok1, alebo po stlačení tlačítka, sa aktualizuje výberový zoznam, ktorý obsahuje všetky súbory .xlsx v adresári odkiaľ je tento súbor otvorený. Po aktualizácii sa automaticky nastaví na 1. voľbu. Vyberiete si v zozname, samé to vloží vzorec na čítanie dát z daného súboru.

Áno, ja som si to všimol, hneď ako som to odoslal, preto som to hneď zmazal, a posielam správnu verziu.
Urobil som Vám vzorce rovno do tabuliek. Mohli ste to dopísať do predošlého vlákna.

No to som aj čakal, že nenapíšete žiadne podrobnosti, ani nedáte prílohu s reálnymi dátami, počtom stĺpcov, typom dát rozložením v listoch a pod.
No nič, 3 x som preleštil moju ošúchanú krištáľovú guľu, vypil 2 čarovné nápoje so žabacieho slizu, prehltol netopiera , o ostatných rituáloch ani nehovorím radšej, ... a navrhol som Vám riešenie. Žiaľ bez udania podrobností Vám to nedokončím, musí to byť na mieru.
Ešte treba zinteligentniť zadávanie filtra, pretože tento predpokladám ovládať vedieť nebudete. Funguje tak, že pre každý stĺpec dát nadefinujete podmienku (>30, <50, lenže napr. prázdny dátum musíte nadefinovať ="="&""), vedľa seba je AND, pod sebou je OR.

Čo sa týka toho obnovovania, v reálnom čase to nieje príliš reálne. Hlavne ak máte množstvo listov s množstvom riadkov. Takže som to nastavil tak, že sa filter vypočíta keď sa prepnete na list Filter, alebo ak zmeníte filter.

Tu máte spojenie tabuliek makrom, a buď si dorobíte filtrovanie podľa tých tajných podmienok, alebo nám ich prezradíte spolu s druhmi, typmi, počtom údajov, a mi Vám pomôžeme to urobiť.
Počet tých tabuliek je nemenný? Počet riadkov v tabuľkách je nemenný ? Dajte prílohu.

No teda! Aspoň k niečomu funkčnému sme sa spoločne dobrali.

Ak si nebudete vedieť s niečim rady, kľudne napíšte aj do tohto vlákna, aj keď sa to nebude týkať priamo odkazov na listy, ako je v názve. Ale aspoň budeme vedieť o čo ide. Nebojte, nikto spoza klávesnice nekúše.

Nekúše ??? 5


Strana:  1 ... « předchozí  284 285 286 287 288 289 290 291 292   další » ... 302

Uživatelské menu

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

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