Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  20 21 22 23 24 25 26 27 28   další » ... 37

Jeza.m napsal/a:

Ale i tak se zeptám lze nějak makrem přepsat SQL dotaz Excelového Dotazu vytvořeného editorem dotazů?


Mrkněte na
https://msdn.microsoft.com/en-us/vba/excel-vba/articles/workbook-queries-property-excel

Microsoft se "snaží"...

Co se dá dělat.
V Možnostech, Data, lze zaškrtnout "Zobrazit průvodce importem dat starší verze"
Zobrazí se na záložce Data, Načíst data, Starší verze průvodců.
Tyto průvodce lze také vytáhnout na pohodlnější pozici úpravou menu v sekci příkazy mimo pás karet, Text je "Z .... "

Pokud je to možné, připravuji tato připojení raději ve verzi 2010. V novějších verzích to (zatím?) funguje. Jen se občas "ztratí" přihlašovací údaje a není vždy snadné je obnovit.

Co se týká "nového" připojování přes powerquery, je tu podstatná změna v přihlašování. Excel ukládá použité přihlašovací údaje k databázi lokálně a není jednoduché je měnit. Pokud má někdo jedno připojení s jedním loginem a odpovídajícími právy, tak se s tím dá žít. Pokud má někdo více více rolí, tak má problém.

Z pohledu maker tady postupně vzniklo poměrně nepřehledné seskupení objektů, které se občas tváří, že jsou stejné (až na pár podstatných maličkostí). Řada z nich je R/O. Navíc mám pocit, že se to mění pod rukama.

Odpověď na jednoduchý dotaz by vydala na samostatný článek, u připojení záleží mj. na tom, kde a jak se používá. Pokud jde o M, je tam objekt "ModelConnection".

https://msdn.microsoft.com/en-us/VBA/Excel-VBA/articles/modelconnection-object-excel

AL napsal/a:

..., pokial napisete sem na forum, ze format cisla je velmi malo znama vec, tak si asi trochu pletiete auditorium...


Tak bych to neviděl. Je tu snad málo dotazů od lidí, pro které je to skvělý objev? Pro tyto lidi může být příspěvek zajímavý. Jen ve fóru to zapadne.

Jiná věc je, jak formáty využívat. Vizuálně se řádový posun (bez nějaké značky) nedá odlišit od neposunutých. Pokud se to pustí mezi lidí, téměř vždy někdo něco sečte a pak se řvavě diví.

Jiný formátovacé příklad: 8:20 je h:mm nebo m:ss?
A co když to někdo navíc smíchá? Běžně to v datech dostávám. Na koukání to nevadí, ale stačí udělat průměr...

Uvedený kaledář je opravdu pěkná ukázka maticového vzore, i když fakticky jen kopíruje řešení běžnými vzorečky.
Ovšem tvrzení, že "normální" vzorce a vba stačí na 100% je sice pravdivé, ale v řadě případů hodně neefektivní.
Například regresní analýza (pomíjím zmatek ve výběru funkcí). Funkce LINREGRESE je maticová a vrací matici výsledků. To neobejdete skalárním součinem a psát to ve vba je možné, ale málo efektivní. Mimochodem, maticový vzorec obalený skalárním součinem je stále maticovým vzorcem, jen je menší riziko, že ho někdo špatně uloží.
Další uplatnění jsou různé kontroly zadaných čísel (ean, čísla karet, čísla účtů, sipo, ...). Lze to samozřemě řešit ve VBA, pro mne je pro rychlou kontrolu často rychlejším řešením maticový vzorec (třeba obalený skalárním součinem).
Příklad pro formátování:
=A(MOD(SUMA(--ČÁST(ZPRAVA("000000"&ZLEVA(A1;IFERROR(NAJÍT("-";A1)-1;0));6);ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:6"));1)*{10;5;8;4;2;1});11)=0;MOD(SUMA(--ČÁST(ZPRAVA("0000000000"&ČÁST(A1;IFERROR(NAJÍT("-";A1)+1;1);20);10);ŘÁDEK(NEPŘÍMÝ.ODKAZ("1:10"));1)*{6;3;7;9;10;5;8;4;2;1});11)=0)
Vzorec otestuje číslo účtu bez lomítka a kódu banky. Samozřejmě je maticový.

Vovka napsal/a:

pro Luba: vzorec není z internetu, ale z tištěné knihy od Walkenbacha (resp. z přiloženého CD). Když to bylo tak jednoduché, proč jste ten vzorec neopravil?


Nechtěl jsem kazit radost z objevování.

Je to jednoduché: Spočtu, který den je pondělí prvního týdne a přičtu matici 6x7 pro jednotlivé dny. Podmínka není nezbytná. Lze ji snadno nahradit podmíněným formátováním.

"Složitost" maticových vzorců je podle mne způsobena potřebou přepnout myšlení.

=KDYŽ(MĚSÍC(DATUM(ROK(B3);MĚSÍC(B3);1))<>MĚSÍC(DATUM(ROK(B3);MĚSÍC(B3);1)-DENTÝDNE(DATUM(ROK(B3);MĚSÍC(B3);1);2)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7});"";DATUM(ROK(B3);MĚSÍC(B3);1)-DENTÝDNE(DATUM(ROK(B3);MĚSÍC(B3);1);2)+{0;1;2;3;4;5}*7+{1\2\3\4\5\6\7})

Po částech:

Dny - maticově do 6 x 7 buněk
={0;1;2;3;4;5}*7+{1\2\3\4\5\6\7}

Pondělní datum - 1 protože kalendář nemá nulu a dny počítáme od jedné (a vzoreček je o trochu kratší).

=DATUM(ROK(B3);MĚSÍC(B3);1)-DENTÝDNE(DATUM(ROK(B3);MĚSÍC(B3);1);2)

atd.

To není výzva. Vzorec je poměrně přímočarý a jednoduchý.

Funkčnost vzorců na internetu, které se týkají práce s kalendářem je vždy dobré ověřit. Zejména, když implicitní hodnoty u nás dávají chyby.

Pokud jde o jeden měsíc tak lze
=SUMIFS(A:A;B:B;"CZ";C:C;">=1.měsíc.rok";C:C;"<=Poslední.měsíc.rok")

Například v D1 je měsíc, v E1 je rok:

=SUMIFS(A:A;B:B;"CZ";C:C;">="& DATUM(E1;D1;1);C:C;"<="& EOMONTH(DATUM(E1;D1;1);0))

Teprve teď jsem si všiml, že AL napsal totéž. 1

Pokud potřebuješ více měsíců, můžeš vzorec "namnožit" pro jednotlivé měsíce a sečíst nebo totéž udělat maticovým vzorcem:

{=SUMA(SUMIFS(A:A;B:B;"CZ";C:C;">="& DATUM(E1:E3;D1:D3;1);C:C;"<="& EOMONTH(DATUM(E1:E3;D1:D3;1);0)))}

(Bez složených závorek ale při ukládání použij ctrl-shift-enter)
V příkladu jsou v D1:D3 měsíce a v E1:E3 odpovídající roky.

Posílám ukázku

To nebyl dotaz.

Prostě pokud někdo si chce udělat rychlý přehled za minulý týden, tak data jsou posunuta o den. 7

Funkce zřejmě není moc používána. Prostě jsem v kot. tabulce zkusil rychle vybrat minulý týden. Pak jsem chvíli hledal chybu. Tohle mne hned nenapadlo.

Nástroj je to dobrý, ale chyb ja v něm na můj vkus docela dost. Tahle je další.

Možná slovenská verze je OK?

Zdravím.

Všimnul jsem si chování filtru kal. dat v kontigenční tabulce.

Pokud filtrujeme minulý, tento nebo příští týden, tak podle mikrosoftu týden začíná v neděli, končí v sobotu.

Verze min 2010 až 2016.

Taky je tu index:

=INDEX($A$1:$HVT$12;ŘÁDEK($1:$12);TRANSPOZICE(ŘÁDEK($1:$1000))*6-5)

(Maticově)

ad věk. Pokud to zůstane, jak je psáno, tj. je tam jen jeden uzavřený interval,
tak bych použil kontingenční tabulku.

Do řádků věk, seskupit, začátek = 18, konec = 26, krok 8.

a je to.

Viz data - citlivostní analýza, tabulka dat, případně správce scénářů.

Zkuste také zadat B1: =SUMA($A$2:A1), C1: =SUMA(A1:$A$2) a C1 také zkopírujte dolů.

A Excel tyto vzorce vyhodnocuje jako různé.

Jinak řečeno - kotva jednoho rozhu uprostřed bloku dělá neplechu.

Narazil jsem na to, když jsem hledal rozdílné vzorce (přejít na - jinak - rozdíly (ve sloupcích|řádcích)

Ještě soubor


Strana:  1 ... « předchozí  20 21 22 23 24 25 26 27 28   další » ... 37

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse