< návrat zpět

MS Excel


Téma: Tabulka v PDF do Excelu rss

Zaslal/a 7.10.2016 12:43

Dobry den, potreboval by som poradit. Mam v pdf tabulku 116 stranovu, prikladam 1 stranu a potrebujem bud urobit editaciu cez adobe acrobat pro alebo otvorit to v exceli a urobit to tam.Prikladam 1 stranku. Potrebujem odtial vymazat cisto len cas, datum nie a odstranit cely stlpec skuromne. mohol by mi niekto poradit.
Dakujem

Příloha: rar33011_kniha.rar (69kB, staženo 44x)
Jméno
Kontrola
Text
  b i u s img code url hr   1 2 3 4 5 6 7 8 9 10

Strana:  « předchozí  1 2
#046510
Lugr
Aha, toho jsem si nevšiml. 5citovat
#046517
elninoslov
Konkrétne na tomto príklade je vidieť, čo myslel pred rokmi elcha, keď písal, že sa na prevod nedá spoľahnúť. Pozrite si 3. stĺpec vo vyznačených riadkoch - Word nerozpozná text, a zmení ho na obrázok, aj keď v PDF-ku je to text!

"Potreba" úpravy PDF súborov je neskutočne rozšírený nešvar. Riešim to tak často, že si myslím, že aspoň 90% ľudí nepochopilo, že PDF je primárne určený ako finálny (!) produkt.
Příloha: zip46517_kniha.zip (29kB, staženo 20x)
citovat
#046518
avatar
Dnes máme navíc PQ :

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

+ pár drobných doladění.citovat
#046520
elninoslov
No to by bolo celkom zaujímavé. Ale ak dobre chápem, je to Power BI, nie Power Qwuery. Ak doinštalujem Power Bi Desktop, tak mi to v Power Query neponúka Power BI dotaz (šedý). Máte nejaký funkčný príklad, nech sa z toho vysomárim?citovat
#046526
avatar
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"
citovat
#046528
elninoslov
Heh, robíte s tým čáry-máry ako mepexg :) V PowerBI to funguje. No uložiť sa to dá iba ako pbix/pbit - to mi do Excelu napchať nejde, export iba ako šablóna PowerBI a PDF, publikovať iba online. Ak dám v Exceli Hľadať v katalógu údajov, tak PowerBI chce login na PowerBI konto. Snáď to ide aj inak ako online cez svoje konto. Nechce sa mi to ďalej skúmať, nepotrebujem to, a tieto P* veci mi nevoňajú, ale majú ohromné možnosti.citovat

Strana:  « předchozí  1 2

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

microsoft 365 hlaska sharepoint

jano1 • 20.7. 16:59

Názvy z řádků do sloupců Power Query

Alfan • 19.7. 13:49

Názvy z řádků do sloupců Power Query

lubo • 19.7. 12:24

vyhledání obsahu buňky

vfort • 18.7. 11:22

Názvy z řádků do sloupců Power Query

Alfan • 18.7. 10:01

Tlac 2 roznych tabuliek

loksik.lubos • 17.7. 20:43

Týden v roce

Petr92 • 16.7. 15:34