Skriva funktion i Excel?

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Användarvisningsbild
Icecap
Inlägg: 26620
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Skriva funktion i Excel?

Inlägg av Icecap »

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.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31281
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Skriva funktion i Excel?

Inlägg av MadModder »

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
Användarvisningsbild
Icecap
Inlägg: 26620
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Skriva funktion i Excel?

Inlägg av Icecap »

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.
Nerre
Inlägg: 27165
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Skriva funktion i Excel?

Inlägg av Nerre »

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.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31281
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Skriva funktion i Excel?

Inlägg av MadModder »

Men letaupp osv funkar ju bara om man har tabellen i ett öppet kalkylblad.
Nerre
Inlägg: 27165
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Skriva funktion i Excel?

Inlägg av Nerre »

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.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31281
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Skriva funktion i Excel?

Inlägg av MadModder »

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.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46872
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Skriva funktion i Excel?

Inlägg av TomasL »

Skapa en mall med formlerna/kalkylbladen
Användarvisningsbild
Icecap
Inlägg: 26620
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Skriva funktion i Excel?

Inlägg av Icecap »

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.
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31281
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Skriva funktion i Excel?

Inlägg av MadModder »

"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. :D
Nerre
Inlägg: 27165
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Skriva funktion i Excel?

Inlägg av Nerre »

Icecap skrev: 23 november 2024, 12:47:14 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Ω.
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
Användarvisningsbild
swesysmgr
Inlägg: 14869
Blev medlem: 28 mars 2009, 06:56:43
Ort: Göteborg

Re: Skriva funktion i Excel?

Inlägg av swesysmgr »

MadModder skrev: 23 november 2024, 10:54:30 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.
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.
Skriv svar