Potřebuji pomoct s tabulkou

Diskuse o všem ostatním

Moderátor: VSbrok

Uživatelský avatar
MartinD
Pokročilý
Příspěvky: 214
Registrován: 28 kvě 2019 12:49

Potřebuji pomoct s tabulkou

Příspěvek od MartinD » 04 lis 2019 13:20

Untitl1ed.png
Untitl1ed.png (18.16 KiB) Zobrazeno 3285 x
zdravím, potřebuji poradit, zatím mám příkaz v buňce takto, potřeboval bych nahradit ticker symbol data z buňky, zde konkrétně z B4... hledám jak na to, abych mohl jenom chytnout a roztáhnou, nemusel tam ručně vepisovat tickery

zkoušel jsem to jako "B4" to sice B4 zobrazí jako buňku, hází mi to ale chybu v kodu, jak to máte vy ?
a pokud se můžu rovnou zeptat, odkud vy táháte data ? z finvizu mi to tam dělá hvězdičky všude, kdyby šli nějak smazat, pak už nic neřeším, ale nevím jak na to, najít a nahradit mi nejde
ABBV, MO, T, XOM, IRM, WFC, INTC, PFE

Andrej
Pokročilý
Příspěvky: 235
Registrován: 20 čer 2019 22:07

Re: Potřebuji pomoct s tabulkou

Příspěvek od Andrej » 04 lis 2019 13:25

Napr. môj plný kód na forward PE vyzerá nasledovne:

Kód: Vybrat vše

=IFERROR(IF(D6="ETR";VALUE(SUBSTITUTE(INDEX(IMPORTHTML("https://finance.yahoo.com/quote/"&SUBSTITUTE(C6;".";"-")&".DE/key-statistics";"table"; 1);4;2);".";","));VALUE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(index(IMPORTHTML("http://finviz.com/quote.ashx?t="&SUBSTITUTE(C6;".";"-");"table"; 11);2;4); "*"; ""); "*"; ""); "%"; "");".";",")));0)
C - ticker
D - burza
SPM: /viewtopic.php?f=12&t=524
ETF: IWDA
Technology: INTC | CSCO | T | IRM
Consumer Goods: MO
Financial: WFC | NRZ | O
BDC: MAIN
Utilities: PPL
Industrials: RTX | MMM
Healthcare: ABBV | PFE | JNJ
Basic Materials: RDS.B | XOM

Uživatelský avatar
MartinD
Pokročilý
Příspěvky: 214
Registrován: 28 kvě 2019 12:49

Re: Potřebuji pomoct s tabulkou

Příspěvek od MartinD » 04 lis 2019 13:42

koukám že jsem docela amatér, nerozumím většině toho tvýho kodu :D děkuju za snahu, nicméně tohle zatím nezvládnu... nějak konkrétněji jak nahradit ticker daty z nějaké buňky, tedy jak místo ABBV vložit buňku B4 ? a případně jak z importovaných dat z finviz odstranit hvězdičku ? hodí mi to například když chci div yield tak
mi to zobrazí *3.5 %* a ty hvězdy mi z toho dělají text, ten já ale nepotřebuji, potřebuji číslo abych s tím mohl dál pracovat
ABBV, MO, T, XOM, IRM, WFC, INTC, PFE

Andrej
Pokročilý
Příspěvky: 235
Registrován: 20 čer 2019 22:07

Re: Potřebuji pomoct s tabulkou

Příspěvek od Andrej » 04 lis 2019 13:48

Kód: Vybrat vše

=IFERROR(VALUE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(index(IMPORTHTML("http://finviz.com/quote.ashx?t="&SUBSTITUTE(B4;".";"-");"table"; 11);2;4); "*"; ""); "*"; ""); "%"; "");".";",")))
Toto by mohlo fungovať, snáď tam nie je chyba v zátvorkách.
SPM: /viewtopic.php?f=12&t=524
ETF: IWDA
Technology: INTC | CSCO | T | IRM
Consumer Goods: MO
Financial: WFC | NRZ | O
BDC: MAIN
Utilities: PPL
Industrials: RTX | MMM
Healthcare: ABBV | PFE | JNJ
Basic Materials: RDS.B | XOM

Uživatelský avatar
MartinD
Pokročilý
Příspěvky: 214
Registrován: 28 kvě 2019 12:49

Re: Potřebuji pomoct s tabulkou

Příspěvek od MartinD » 04 lis 2019 14:16

už se mi povedlo odstranit hvězdičky které mi tam hází finviz, ještě přijít na to, jak nahradit ticker v kodu tak, abych kod jenom roztahl a nemusel manualně měnit ticker
ABBV, MO, T, XOM, IRM, WFC, INTC, PFE

Andrej
Pokročilý
Příspěvky: 235
Registrován: 20 čer 2019 22:07

Re: Potřebuji pomoct s tabulkou

Příspěvek od Andrej » 04 lis 2019 14:19

Ako to máš teraz? Podľa toho predchádzajúceho kódu by to tak malo fungovať, ticker berie priamo z B4.
SPM: /viewtopic.php?f=12&t=524
ETF: IWDA
Technology: INTC | CSCO | T | IRM
Consumer Goods: MO
Financial: WFC | NRZ | O
BDC: MAIN
Utilities: PPL
Industrials: RTX | MMM
Healthcare: ABBV | PFE | JNJ
Basic Materials: RDS.B | XOM

Uživatelský avatar
Sumo.cz
Pokročilý
Příspěvky: 205
Registrován: 12 čer 2019 15:01
Kontaktovat uživatele:

Re: Potřebuji pomoct s tabulkou

Příspěvek od Sumo.cz » 04 lis 2019 14:32

&SUBSTITUTE(B4;".";"-") - tohle ti nahrazuje ticker tickerem z B4 a ještě navíc nehradí mezeru -.

Lépe by se upravoval tvůj kód pokud by jsi ho sem napsal a né ho hodit jako obrázek. To se pak nikomu nechce přepisovat:)

Mě u Finviz ještě dělá problém, pokud je číslo třeba 01.01 google to bere jako datum a musím to před úpravou převést na text.Jinak to hází čísla jako 47253 atd.....

Můj kód na Finviz pro Forward P/E

rozdělil jsem ho na části aby se lépe četl.

Kód: Vybrat vše

=SUBSTITUTE(
             SUBSTITUTE(
                        INDEX(
                               TO_TEXT(
{IMPORTHTML("https://finviz.com/quote.ashx?t=" & SUBSTITUTE(B4;" ";"-");"table";11)}
                                        )
                               ;2;4)
                         ;"*";"")
               ;".";",")
*1
Ale mám tam středníky a koukám že ty používáš jako rozdělovník , . Snad jsem to upravil OK

Kód: Vybrat vše

=DOSADIT(
             DOSADIT(
                        INDEX(
                               TO_TEXT(                               
{IMPORTHTML("https://finviz.com/quote.ashx?t=" & DOSADIT(B4," ","-"),"table",11)}
                                        )                                        
                               ,2,4)
                         ,"*","")
               ,".",",")
*1
První SUBSTITUTE nahrazuje . za , aby se dalo převádět na číslo brané v české verzi(u AJ není potřeba)
Druhé SUBSTITUTE nahradí * za nic
INDEX vypíše jen hodnotu v stažené tabulce na 2 řádku 4 sloupce
TO_TEXT převede importované data na text viz výše
IMPORTHTML import data z webu, importuje se 11 tabulka(vlastně 12, jelikož 0 je první)
SUBSTITUTE(B4;".";"-") a toto ti bere ticker z B4 a navíc to nahradí mezeru u některých tickerů za -
A nakonec násobím 1 aby se to bralo jako číslo. V případě nenalezení bude následovat error #N/A (Zdroj na adrese nebyl nalezen.).

Snad tak nějak vysvětleno:)

Ale na Finviz není zdaleko vše. Chce to propojit aspoň s dvěma zdroji. Pomoci funkce iferror(nenajde hodnotu na webu a hledá na druhém)
Třeba s Yahoo Finance

Kód: Vybrat vše

=IFERROR(
         SUBSTITUTE(INDEX(TO_TEXT({IMPORTHTML("https://finance.yahoo.com/quote/"& SUBSTITUTE(B4;" ";"-")&"/key-statistics";"table";1)});4;2);".";",")*1
;
         SUBSTITUTE(SUBSTITUTE(INDEX(TO_TEXT({IMPORTHTML("https://finviz.com/quote.ashx?t=" & SUBSTITUTE(B4;" ";"-");"table";11)});2;4);"*";"");".";",")*1
)
a s čárkama

Kód: Vybrat vše

=IFERROR(
         DOSADIT(INDEX(TO_TEXT({IMPORTHTML("https://finance.yahoo.com/quote/"& DOSADIT(B4," ","-")&"/key-statistics","table",1)}),4,2),".",",")*1
,
         DOSADIT(DOSADIT(INDEX(TO_TEXT({IMPORTHTML("https://finviz.com/quote.ashx?t=" & DOSADIT(B4," ","-"),"table",11)}),2,4),"*",""),".",",")*1
)
Naposledy upravil(a) Sumo.cz dne 04 lis 2019 15:52, celkem upraveno 4 x.

Uživatelský avatar
MartinD
Pokročilý
Příspěvky: 214
Registrován: 28 kvě 2019 12:49

Re: Potřebuji pomoct s tabulkou

Příspěvek od MartinD » 04 lis 2019 15:07

Kód: Vybrat vše

=DOSADIT(INDEX(IMPORTHTML("https://finviz.com/quote.ashx?t=ABBV", "table", 11), 9, 4), "*", "")
takhle vypadá zatím ten můj kod, který funguje jak má, jediný problém je, že musím přepisovat ticker ručně pro každou novou pozici

nepotřebuju přehazovat čárky jelikož mám anglický čtení, takže v číslech jsou tečky... první půlku jsem tedy zatím zvládl, s vaší pomocí, děkuju

teď ještě tu druhou :D
ABBV, MO, T, XOM, IRM, WFC, INTC, PFE

Uživatelský avatar
Sumo.cz
Pokročilý
Příspěvky: 205
Registrován: 12 čer 2019 15:01
Kontaktovat uživatele:

Re: Potřebuji pomoct s tabulkou

Příspěvek od Sumo.cz » 04 lis 2019 15:08

Kód: Vybrat vše

=DOSADIT(INDEX(IMPORTHTML("https://finviz.com/quote.ashx?t=" & B4, "table", 11), 9, 4), "*", "") 
to je celé

Uživatelský avatar
MartinD
Pokročilý
Příspěvky: 214
Registrován: 28 kvě 2019 12:49

Re: Potřebuji pomoct s tabulkou

Příspěvek od MartinD » 04 lis 2019 15:20

pecka, už chápu, teď je akorát jeden nový problém, nefunguje mi na to formátování, tedy například aby bu%nka zezelenala, pokud je v ní hodnota menší než X
ABBV, MO, T, XOM, IRM, WFC, INTC, PFE

Odpovědět