Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  14 15 16 17 18 19 20 21 22   další » ... 38

První den týdne dostanete:

=DATUM(rok;1;4) - DENTÝDNE(DATUM(rok;1;4);3) + (týden-1)*7


Na opravu "vzorce" si netroufám.

Použijte funkce maxifs, (minifs), ...

Golem napsal/a:



Jde mi o emulaci v jiném jazyku
Děkuji moc za účast. Hezký den


Potom by možná vhodné nahlédnout do specifikace:

https://docs.microsoft.com/en-us/openspecs/microsoft_general_purpose_programming_languages/ms-vbal/

Anglická verze vzorce se vkládá do formula. Kromě přeložených názvů funkcí musíte také nastavit oddělovače, případné texty u některých vzorců, ...

Pokud se nechcete unavovat překladem, stačí ve vba do formulalocal vložit českou verzi a ve formula najdete anglický překlad.

Jednoduše:
=KDYŽ(JE.ČISLO(A1);A1/10^(POZVYHLEDAT(0;MOD(A1;10^(ŘÁDEK(NEPŘÍMÝ.ODKAZ("A1:A4"))-1)))-1);"")
(maticově)

Použij funkci řádek() v podmíněném formátu. např:

=MOD(ŘÁDEK()-1;4) <2

a pro splněnou podmínku nastav pozadí

Něco takového:

=IFERROR(SVYHLEDAT(A2;A3:A3:$B$35;2;0);0)-B2

??

Máte pravdu, pracuji nyní v pbi, tak jsem to zkusil v něm a neověřil jsem funkčnost v excelu.

Zásadní problém to není, možností, jak dostat v případě potřeby data z pbi do excelu, je dost.

Načtení je jednoduché. Protože jsem tento import zatím nezkoušel, tak jsem se pobavil nad spojováním buněk záznamů. V kódu zůstaly zbytky po hledání společných řádků.

pq dotaz:
let
Zdroj = Pdf.Tables(File.Contents("C:\Temp\KNIHA.pdf")),
Table001 = Zdroj{[Id="Table001"]}[Data],
#"Záhlaví se zvýšenou úrovní" = Table.PromoteHeaders(Table001, [PromoteAllScalars=true]),
Data = Table.AddIndexColumn(#"Záhlaví se zvýšenou úrovní", "Index", 1, 1),
#"Spojovani radku" = Table.SelectColumns(Data,{"Dátum výjazdu", "Cesta", "Tachometer", "Index"}),
Heuristika = Table.AddColumn(#"Spojovani radku", "Zacatek zaznamu", each // jak poznat první záznam...
// Datum je datum nebo null
(
([Dátum výjazdu] = null)
or
((try Date.FromText([Dátum výjazdu]) otherwise null)) is date
)
and
// cesta začíná na [ ??? Je to všude???
Text.StartsWith([Cesta], "[")),
// Dva začátky by za sebou být neměly...
#"Přidané: Index" = Table.AddIndexColumn(Heuristika, "Index.1", 0, 1),
#"Sloučené dotazy1" = Table.NestedJoin(#"Přidané: Index", {"Index.1"}, #"Přidané: Index", {"Index"}, "Přidané: Index", JoinKind.LeftOuter),
#"Rozbalené Přidané: Index" = Table.ExpandTableColumn(#"Sloučené dotazy1", "Přidané: Index", {"Index", "Zacatek zaznamu"}, {"Predchozí.Index", "Predchozí.Zacatek zaznamu"}),
#"Seřazené řádky1" = Table.Sort(#"Rozbalené Přidané: Index",{{"Index", Order.Ascending}}),
#"Index prvniho radku zaznamu" = Table.SelectRows(#"Seřazené řádky1", each [Zacatek zaznamu] and ([Predchozí.Zacatek zaznamu] <> true)),
#"Zacatky zaznamu" = Table.AddIndexColumn(#"Index prvniho radku zaznamu", "Záznam", 1, 1),
#"Odebrané ostatní sloupce" = Table.SelectColumns(#"Zacatky zaznamu",{"Index", "Záznam"}),
// Máme indexy prvních řádků jednotlivných záznamů
// Může se pokračovat...
//
#"Data + záznamy" = Table.NestedJoin(Data, {"Index"}, #"Odebrané ostatní sloupce", {"Index"}, "Zaznamy", JoinKind.LeftOuter),
#"Rozbalené Zaznamy" = Table.ExpandTableColumn(#"Data + záznamy", "Zaznamy", {"Záznam"}, {"Záznam"}),
// Předchozí join změnil pořadí řádků, musíme to znovu seřadit
#"Seřazené řádky" = Table.Sort(#"Rozbalené Zaznamy",{{"Index", Order.Ascending}}),
#"Očíslování záznamů" = Table.FillDown(#"Seřazené řádky",{"Záznam"}),
#"Spojené záznamy" = Table.Group(#"Očíslování záznamů", {"Záznam"}, {{"Tab", each _, type table [Dátum výjazdu=text, Dátum príjazdu=text, Cesta=text, Vodič=text, #"Súkromné#(lf)km"=text, Služobné km=text, Celkom km=text, Tachometer=text, #"Tankovan#(lf)ie"=text, #"Podp#(lf)is#(lf)vodič#(lf)a"=text, Index=number]}}),

// tohle je trochu divočejší, ale potřebuju funkci, která
// převede tabulku na souhrnou tabulku s jedním řádkem

#"Spojení sloupců" = Table.TransformColumns(#"Spojené záznamy", {"Tab", each Table.FromColumns(List.Transform(Table.ToColumns(_), each {Text.Combine(_, " ")}), Table.ColumnNames(#"Očíslování záznamů"))}),
#"Rozbalené Tab" = Table.ExpandTableColumn(#"Spojení sloupců", "Tab", {"Dátum výjazdu", "Dátum príjazdu", "Cesta", "Vodič", "Súkromné#(lf)km", "Služobné km", "Celkom km", "Tachometer", "Tankovan#(lf)ie", "Podp#(lf)is#(lf)vodič#(lf)a"}, {"Dátum výjazdu", "Dátum príjazdu", "Cesta", "Vodič", "Súkromné#(lf)km", "Služobné km", "Celkom km", "Tachometer", "Tankovan#(lf)ie", "Podp#(lf)is#(lf)vodič#(lf)a"}),
#"Oprava hlavičky" = Table.TransformColumnNames(#"Rozbalené Tab", each Text.Replace(_, "#(lf)", " "))
in
#"Oprava hlavičky"

Dnes máme navíc PQ :

Pdf.Tables(File.Contents("C:\Temp\KNIHA.pdf"))

+ pár drobných doladění.

osobně bych to řešil:
=VYHLEDAT(C3;$F$3:$F$134;$F$3:$F$359)=C3

případně
=IFNA(VYHLEDAT(C3;$F$3:$F$134;$F$3:$F$359)=C3;NEPRAVDA)

Vysvětlení: Testujeme, jestli funkce našla to, co měla najít.

Vyhladat potřebuje setříděnou oblast hledání. Proti countif, případně hledání na přesnou shodu je pak u většího objemu dat řádově rychlejší.

Tak se mrkni, co děláš:

cd /d mění aktuální adresář, včetně jednotky. Pokud tam je notifer.exe, pak zadaný řetězec není adresář.

Nevím co chceš dělat, a nechce se mi to nasatvovat, ale zkusil bych vynechat to cd /d.

Pokud před spuštěním potřebuješ nastavit adresář, tak zkus použít oddělovač příkazů: & nebo && nebo ||.
Vhodný je nejspíš ten &&, které spustí další příkaz jen, když projde předchozí.

Stačí jednoduše

=SVYHLEDAT("*" & B1 & "*";$B$3:$C$368;2;0)

Pokud je jméno částí jiného jména (viz. elninoslov) a vyčistíte seznam jmen tak můžete použít

=INDEX($C$3:$C$368;POZVYHLEDAT("*," & B1 & ",*";"," & $B$3:$B$368 & ",";0))

(maticově)

Pokud čistit nechcete tak můžete použít:

=INDEX($C$3:$C$368;POZVYHLEDAT("*," & B1 & ",*";"," & DOSADIT($B$3:$B$368;" ";"") & ",";0))

(maticově, čistí mezery, čištění dalších znaků vypadá podobně)

OK.

3 otázky:

1) Jaký praktický význam má zjišťování velikosti objektů v excelu podle velikosti komprimovaného souboru?

2) Proč v ukázce je velikost celého souboru 6,6 MB a tento soubor obsahuje 24 listů a (změřená) velikost každého je 4,3 MB?

3) Jak vyseparování objektu z celku ovlivní velikost samotného objektu a velikost zbývající části?

Vytvoření uvedené analýzy? Přesně spíše ne (soubor je komprimován a rozměr jednotlivých prvků v souboru se dá stanovit jen obtížně)
Odhad je možný.

Potom počítejte s makrem s rozsahem v řádu tisíce řádků, spíše více.
Doba běhu u většího souboru (předpokládám, že malé nejsou moc zajímavé) v minutách i déle.

Makro v souboru bude představovat další problém, některá měření jsou destruktivní.

K napsání takového makra jsou nezbytné nadstandardní znalosti programování (vba/C#), extrémně nadstandardní znalosti excelu, včetně "power" technologií, nedokumentovaného chování objektů, ale i některých starších, dnes méně propagovaných funkcionalit. Řada potřebných znalostí se vždy vygooglit nedá (dívám se na anglické, ruské, německé a občas i jiné weby).

Výstup. Podle mých zkušeností uvedená statistika nestačí. U malých souborů je zpravidla nezajímavá, u velkých souborů je nezbytné bližší určení místa problémů. Navíc obvykle víe vadí rychlost (pomalost) než velikost.

Údržba - MS trvale excel rozvíjí. Paralelně tu máme víc verzí. Po nějakém čase bude makro minimálně nekompletní, případně chybné.

Pokud mohu soudit podle příspěvků, je zde několik jedinců, o kterých se domnívám, že při správné motivaci a dostatku času něco podobného dokáží vytvořit. Mohu i předpokládat, že některý z nich podobný nástroj někdy vytvořil. Nicméně, nástroj pro zveřejnění vyžaduje odhadem cca 3x více práce, než nástroj pro vlastní potřebu a ne každý je ochoten ho zveřejnit.

@Merlin99

Nevím, jestli s uživateli pracuji málo nebo hodně. Jen jsem došel k poznání, že podobné předefinování základních klávesových zkratek přináší více problémů než užitku.


Strana:  1 ... « předchozí  14 15 16 17 18 19 20 21 22   další » ... 38

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

Týden v roce

Petr92 • 16.7. 15:34

Řazení podle času v kategoriích

veny • 16.7. 11:34

špatný výpočet ze zisku - příčina?

Anonym • 12.7. 22:56

špatný výpočet ze zisku - příčina?

Jakoby • 12.7. 12:35

Řazení podle času v kategoriích

Marekh • 12.7. 9:55

Porovnávací Tabulka

Jess • 8.7. 20:49

Vzorec pro zkopírování obsahu buňky.

veny • 6.7. 8:28