Detta är en uppdatering av ett tidigare inlägg. Då Avanza har uppdaterat sin hemsida behöver man hämta sin kod på annorlunda sätt om man använder sig av metod nr 2 i detta inlägg.
Metod nr 1: Google Finance
För att hämta en aktiekurs med Google Finance behöver först hitta tickern för aktien. Detta gör du enklast genom att söka på aktiens namn där du sedan skriver ticker efteråt. I det här exemplet använder jag Investor A som har tickern STO:INVE-A.
I kalkylarket kommer jag sedan välja den cell där jag vill att kursen ska stå och skriva följande:
=googlefinance("sto:inve-a")
Svårare än så är det inte. Har du dock utländska innehav som du vill ha i svenska kronor blir det lite svårare. Låt Johnson&Johnson vara exempel nu. Då är tickern NYSE:JNJ. För att få valutaomvandling behöver man använda googlefinance funktionen två gånger enligt nedan:
=googlefinance("nyse:jnj")*googlefinance("usdsek")
Som man ser i formeln skriver man in valutorna i den ordningen man vill omvandla dem. I det här fallet från USD till SEK. Här gäller därför om hålla koll på valutaförkortningarna. De vanligaste man behöver använda är svenska kronor (SEK), danska kronor (DKK), norska kronor (NOK), amerikanska dollar (USD), euro (EUR) och kanadensiska dollar (CAD).
Metod nr 2: - Uppdaterat
Det är inte alla aktier som går att få in via Google Finance. Framförallt norska aktier är knepiga att få in. Äger man dessutom ETF:er behöver man även ta till detta sätt. I stället för att använda sig av tickers behöver man istället hemsideadressen till Avanza där ens innehav finns. Vill du exempelvis ha Akelius D måste du söka på det innehavet på Avanza:s gamla sida och sedan kopiera URL-adressen. I det här fallet: https://www.avanza.se/aktier/gamla-aktiesidan.html/1004199/akelius-residential-prop--d Denna adress ska sedan placeras i koden enligt nedan:
=MID(importXml("https://www.avanza.se/aktier/gamla-aktiesidan.html/1004199/akelius-residential-prop--d", "(//span[@class='pushBox roundCorners3'])[1]"),1,6)
Du kommer bara åt den gamla sidan i inloggad läge, men det finns ett sätt att komma runt det. Är du inte inloggad på Avanza kommer länken till Akelius D att se ut så här:
Det fetmarkerade i länken ovan ("om-aktien") behöver bytas ut mot "gamla-aktiesidan". Då funkar ditt Google Kalkylark igen.
Vill du istället sätta in ett annat innehav byter du URL-adressen mot det innehav du önskar. Har du ett utländskt innehav kan du kombinera detta med Google Finance. Gör som i exemplet med Johnson&Johnson så får du kursen i svenska kronor.
Stort tack för tips!
SvaraRaderaVarsågod. Roligt att kunna inspirera!
RaderaTack för tipset om att ta kurserna från Avanza. Tidigare har jag tagit kurserna från Yahoo Finance, och där finns inte XACT Högutdelande eller Bahnhof så de kurserna har jag fått skriva in manuellt. Eftersom det bara var två värdepapper så var det ju inte så farligt, men nu slipper jag det också.
SvaraRaderaSkönt att kunna ha alla kurser uppdaterade automatiskt.
SvaraRaderaHmm, funkar metod 2 fortfarande? Jag får det inte att fungera. Finns det något annat sätt? Hade varit riktigt nice att få det att funka :)
SvaraRaderaProva denna kod: VALUE(SUBSTITUTE(IMPORTXML("https://www.avanza.se/aktier/gamla-aktiesidan.html/1004199/akelius-residential-prop--d","//span[@class='pushBox roundCorners3']/text()"),",","."))
RaderaHej,
RaderaJag är duktigt nyfiken på det här jag med, men kan ta mig tusan inte få ditt exempel att fungera. :-/
Om du vill kan du skicka ett mail till mig (se kontaktsidan längst upp), då kan jag titta på din kod.
RaderaDet gör tyvärr ingen skillnad. Står bara "Error" i cellen. Finns ens Avanzas gamla hemsida kvar?
SvaraRaderaIbland står det error i cellerna, även om det inte händer så ofta. Gamla hemsidan går att komma åt enligt det som står i inlägget.
RaderaDet här funkar, men jag använder Acousort som exempel... (tack för hjälpen Aktiekemisten):
SvaraRadera=VALUE(IMPORTXML("https://www.avanza.se/aktier/gamla-aktiesidan.html/719814/acousort";"//span[@class='pushBox roundCorners3']/text()"))
I exemplet i kommentaren innan är det ett fel, där ett kommatecken ska vara ett semikolon.
FEL : dential-prop--d" , "//span[@c
RÄTT: dential-prop--d" ; "//span[@c
Provade med semikolon som du skriver, men mitt google kalkylark ändrar det automatiskt till ett komma. Verkar som att det spelar roll vilket språk man har som grundinställning och vilket decimaltecken som ens kalkylark vill ha. Mina använder punkt som decimaltecken, och därför behöver jag ha med koden SUBSTITUTE, medan de som har ett komma som decimaltecken inte behöver det.
RaderaMagiskt! Funkar! Tack!
RaderaHur ofta uppdateras det via avanza?
SvaraRaderaKan inte säga hur ofta, men det sker med regelbundna intervall. Kollade i mitt egna dokument, och då stämde kurserna ganska hyfsat.
RaderaTesta den här koden för att få in ETF:er från Avanza på ex Xact Sverige: =VALUE(IMPORTXML("https://www.avanza.se/aktier/gamla-aktiesidan.html/5649/xact-sverige";"//span[@class='pushBox roundCorners3']/text()"))
SvaraRaderasamt nästa ex för FLXD: =VALUE(IMPORTXML("https://www.avanza.se/aktier/gamla-aktiesidan.html/1064231/franklin-libertyq-european-dividend-ucits-etf";"//span[@class='pushBox roundCorners3']/text()"))
Tack. För min del funkar koden efter en liten justering som beror på vad ens Google Kalkylark tolkar som decimaltecken. Koden till Xact Sverige som funkar för mig är denna: =VALUE(SUBSTITUTE(IMPORTXML("https://www.avanza.se/aktier/gamla-aktiesidan.html/5649/xact-sverige","//span[@class='pushBox roundCorners3']/text()"),",","."))
Radera