Matriskalkylering III

Diagonal summering

Att summera diagonalt är i sig ganska enkelt. Med hjälp av en summaformel, t ex  =SUMMA(A1;B2;C4), får man en diagonal summa. Nackdelen är ju förstås om man har några hundra celler man vill summera.

Här presenteras några tekniker som löser det smidigare. Utgångspunkten är tabellen nedan.

 

För att erhålla summan för intervallet B13:F9 används följande formel:

 

Cellen F9 utgör här startpunkten och RAD(1:5) representerar själva matrisen (5 kolumner och 5 rader i FÖRSKJUTNING-formeln). Som framgår av formeln krävs en viss korrigering (1 / -1).


Andra lösningar för att summera intervallet B13:F9 är:

 

För att erhålla summan för intervallet B9:F13 används följande formel:

 

Andra lösningar för att summera intervallet B9:F13 är:

 

Se PRODUKTSUMMA för mer detaljer om funktionen.

Hitta sista raden & kolumnen

Behöver du ha reda på vilken rad eller kolumn som det sista värdet i en serie ligger i? Här presenteras en relativ kort lösning till denna fråga.

Tabellen nedan visar exemplet och visuellt kan vi avläsa att det är den 7:e raden det sista värdet finns i.



Lösningen består av följande matrisformel:


För att erhålla kolumn istället för rad ersätts RAD-funktionen med KOLUMN-funktionen:


Vill vi istället hitta den första tomma raden i en kolumn kan följande matrisformel användas:

Eller med formeln:

Vilket ger rad 6 i exemplet. 

Se också Hitta ifyllda / tomma celladresser.

Hantera matrisdata

Här presenteras en teknik för hantering av matrisdata. Exemplet visar hur man kontrollerar kontrollerar rad- och kolumnangivelser.

Nedan visas den ursprungliga tabellen.

 

Nu vill vi ändra på datamängden i det att den ska presenteras på följande sätt:

Hur får vi denna lösning månne? Jo, med hjälp av följande formel, där formeln i cellen C1 kopieras till de intill liggande cellerna:

 

Hitta största värdet oavsett negativt/positivt

Antag att du vill ha reda på det största värdet i en större datamängd, oavsett om det är positivt eller negativt. Med dessa förutsättningar så är t ex -100 större än 50!

Tabellen nedan visar förutsättningarna för exemplet samt utfallet.

 

Lösningen ligger företrädesvis i att använda sig av ABS-funktionen, vilken ignorerar huruvida tal är positiva eller negativa. Nästa steg är att nyttja MAX-funktionen. Givet förståelsen för det så kan man därefter använda sig av PASSA- och INDEX-funktionerna. Vi får därmed följande tekniska lösning på problemet:

 

Vill vi inte använda oss av en matrisformel kan följande formel vara ett alternativ:

Är alla celler ifyllda?

I en kalkylmall e d kan det vara en god lösning att tvinga användarna att fylla i önskade uppgifter innan slutlig beräkning sker. 

I bilden nedan visas två listor. I lista 1 är alla önskade celler ifyllda varför en beräkning sker. I lista 2 saknas det en uppgift varför den bakomliggande formeln visar felmeddelandet #Saknas!.

 

Lösningen består av en matrisformel, där formeln för Lista 1 är:


För Lista 2 skiljer sig formeln,  tekniskt sett, från den förstnämnda: