Skriva funktion i Excel?
Skriva funktion i Excel?
Jag skulle gärna vilja skriva en funktion till Excel, eg. några stycken.
Jag kan fint skriva dom i det ark jag håller på med - men jag vill helst ha dom som en funktion jag kan använda i alla dokument, oavsett om jag har definierat dom i dokumentet.
Tänk lägga in i t.ex. "Fler Funktioner'.
Det jag vill med dom är att ha en funktion som heter E6/E12/E24/E48/E96/E192 som tar ett värde och omvandlar det till närmsta steg i valda E-kedja.
Hur funktionen ska fungera har jag helt på det rena, hur jag utför den i VB är inget problem - men hur jag sparar den/dom som en "evig" funktion på min dator.
Min matte-lösning vill vara att skala inkommande värde till att vara mellan 0-10/0-100 beroende på vilken E-räcka det rör sig om, hitta närmsta E-värde - och sedan skala det på plats igen o skicka retur.
Det kan vara ganska användbart då jag mycket ofta använder Excel/LibreOffice Calc när jag planerar projekt och att kunde bestämma faktiska värden i första hugg ville vara trevligt.
Jag kan fint skriva dom i det ark jag håller på med - men jag vill helst ha dom som en funktion jag kan använda i alla dokument, oavsett om jag har definierat dom i dokumentet.
Tänk lägga in i t.ex. "Fler Funktioner'.
Det jag vill med dom är att ha en funktion som heter E6/E12/E24/E48/E96/E192 som tar ett värde och omvandlar det till närmsta steg i valda E-kedja.
Hur funktionen ska fungera har jag helt på det rena, hur jag utför den i VB är inget problem - men hur jag sparar den/dom som en "evig" funktion på min dator.
Min matte-lösning vill vara att skala inkommande värde till att vara mellan 0-10/0-100 beroende på vilken E-räcka det rör sig om, hitta närmsta E-värde - och sedan skala det på plats igen o skicka retur.
Det kan vara ganska användbart då jag mycket ofta använder Excel/LibreOffice Calc när jag planerar projekt och att kunde bestämma faktiska värden i första hugg ville vara trevligt.
- MadModder
- Co Admin
- Inlägg: 31282
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Skriva funktion i Excel?
Har inte lusläst precis allt, men det ser ut som att det ska gå att få till med en s.k. add-in med vba-funktionen som laddas varje gång man startar Excel.
https://support.microsoft.com/en-us/off ... 748ae8231f
https://support.microsoft.com/en-us/off ... 748ae8231f
Re: Skriva funktion i Excel?
Det var just den delen jag saknade! Tack som f..!
Sen måste jag samla energi till att skriva det hela - men kanske under helgen.
Sen måste jag samla energi till att skriva det hela - men kanske under helgen.
Re: Skriva funktion i Excel?
Visst går det att göra i VBA, men det går också att göra med uppslagnings-tabeller (LETARAD, LETAUPP etc heter de på svenska LOOKUP, XLOOKUP tror jag de heter på engelska).
Sen har Excel nån skum grej som heter LAMBDA, som är ett sätt att skapa namngivna formler. Jag har inte riktigt lärt mig den ännu, den är inte helt intuitiv tycker jag.
Sen har Excel nån skum grej som heter LAMBDA, som är ett sätt att skapa namngivna formler. Jag har inte riktigt lärt mig den ännu, den är inte helt intuitiv tycker jag.
- MadModder
- Co Admin
- Inlägg: 31282
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Skriva funktion i Excel?
Men letaupp osv funkar ju bara om man har tabellen i ett öppet kalkylblad.
Re: Skriva funktion i Excel?
Du behöver tabellen i ett kalkylblad ja, men du kan ju ha den i ett dolt kalkylblad. Och det går att ha flera tabeller i samma dolda kalkylblad, så man kan ha en tabell för varje serie helt enkelt.
- MadModder
- Co Admin
- Inlägg: 31282
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Skriva funktion i Excel?
Men går det att få det att laddas in så fort man startar Excel?
Att kopiera in ett dolt blad i varenda arbetsbok man jobbar med är ju inte önskvärt.
Att kopiera in ett dolt blad i varenda arbetsbok man jobbar med är ju inte önskvärt.
Re: Skriva funktion i Excel?
Nerre: Jag är inte med här.
Såklart går det att indexera i en tabell - men vad jag söker är att kunde ha en uträkning där resultatet kör igenom t.ex. E24-värden och få närmsta värdet, oavsett det rör sig om mΩ eller MΩ.
Vid att ha den funktion som en standard i excel, kan jag ha en uträkning och få ett standartvärde på en komponent. I vidare uträkningar kan jag se hur andra komponenter - som beror på de förra - utvecklar sig när standardvärden anges.
Och hur jag ska lösa detta med en uppslagstabell ser jag inte - om inte den tabell är gigantisk.
Min lösning vill vara att ta det inkommande värde, skala det till att vara inom spannet i den gällande tabell, hitta bästa värde och sedan skala svaret till rätt storlek.
Såklart går det att indexera i en tabell - men vad jag söker är att kunde ha en uträkning där resultatet kör igenom t.ex. E24-värden och få närmsta värdet, oavsett det rör sig om mΩ eller MΩ.
Vid att ha den funktion som en standard i excel, kan jag ha en uträkning och få ett standartvärde på en komponent. I vidare uträkningar kan jag se hur andra komponenter - som beror på de förra - utvecklar sig när standardvärden anges.
Och hur jag ska lösa detta med en uppslagstabell ser jag inte - om inte den tabell är gigantisk.
Min lösning vill vara att ta det inkommande värde, skala det till att vara inom spannet i den gällande tabell, hitta bästa värde och sedan skala svaret till rätt storlek.
- MadModder
- Co Admin
- Inlägg: 31282
- Blev medlem: 6 september 2003, 13:32:07
- Ort: MadLand (Enköping)
- Kontakt:
Re: Skriva funktion i Excel?
"Letaupp" i Excel tar det närmsta värdet ur tabellen.
Så har man en E12-tabell och skriver in 73 i en cell, så får man tillbaks 68 eller 82. Jag tror man kan bestämma om man vill ha närmast högre eller lägre...
Men det går vad jag vet inte att på det viset få samma cell man skrev i att ändras.
Men ja det blir väldiga tabeller om man ska ha med allt från mΩ till MΩ. Särskilt i E24.
Alternativt om man i svarscellen har en lång formel som skalar om inmatningen. om(x>y;letaupp(x/100;blad hej och hå);blablabla) eller liknande osv osv osv. Det blir ju en kilometer lång formel om man ska få till det.
Så har man en E12-tabell och skriver in 73 i en cell, så får man tillbaks 68 eller 82. Jag tror man kan bestämma om man vill ha närmast högre eller lägre...
Men det går vad jag vet inte att på det viset få samma cell man skrev i att ändras.
Men ja det blir väldiga tabeller om man ska ha med allt från mΩ till MΩ. Särskilt i E24.
Alternativt om man i svarscellen har en lång formel som skalar om inmatningen. om(x>y;letaupp(x/100;blad hej och hå);blablabla) eller liknande osv osv osv. Det blir ju en kilometer lång formel om man ska få till det.

Re: Skriva funktion i Excel?
Lookup-funktionerna gör just det, om sökdatat är sorterat i stigande ordning. Du får träff på den första raden där värdet är högre eller lägre än det sökta.
E24 är ju formellt sett en tabell, men visst, om du vill att den ska ignorera tiopotenser så behöver du lite extra kring detta och då är nog en funktion i VBA en vettigare lösning.
Eller så gör man så här: https://groups.google.com/g/sydney-hack ... WPjJU2uOTM
Re: Skriva funktion i Excel?
Ja det borde gå att lägga i händelsen/event som triggas när arbetsboken öppnas. Du har en genväg på skrivbordet, klicka på den och Excel öppnar arbetsboken och kör önskade funktioner.