Bladnamn i kalkylblad
Här presenteras en teknik för att visa kalkylbladsnamn i celler. I avsnittet "Infoga arbetsboknamn & sökväg vid utskrift" visas en annan teknik för att erhålla kalkylbladsnamn. Dock fungerar den inte när vi vill visa flera kalkylbladsnamn.
Antag att vi har en arbetsbok med 10 kalkylblad. Varje kalkylblad representerar ett projekt, vilket kalkylbladsnamnen reflekterar.
Nu vill vi ange i varje kalkylblad respektive namn. Lösningen består av följande steg:
Steg 1:
- Definiera ett nytt globalt namn, t ex "Projekt".
- Låt namnet referera till ett XL 4-makro: =HÄMTA.DOKUMENT(1)
Där värdet 1 genererar arbetsboknamn och kalkylbladsnamn:
T ex [Bladstatistik.xls]Blad1.Steg 2:
- Skriv in följande formel på önskad plats i samtliga kalkylblad:
=EXTEXT(Projekt;HITTA("]";Projekt)+1;LÄNGD(Projekt))
Se XL-4 Makrofunktioner och Använda namn i XL för ytterligare information.
Skapa radserie utifrån kolumnserie
Här demonstreras hur vi kan skapa en radserie utifrån en kolumnserie, t ex när vi bygger upp en matrismodell.
Bilden nedan visar kolumnserien:
I cell B2 placeras följande formel och kopieras t o m E2:
- =INDIREKT("A"&(KOLUMN()+1))
Resultatet av denna formel blir en matrismodell:
Eller så kan vi göra det på nedanstående sätt:
Utgångspunkten är följande uppställning:
I cellen B1 placeras följande formel och kopieras i raden:
- =FÖRSKJUTNING($A$1;KOLUMN()-2;0)
Resultatet blir följande:
Skapa bladlista för en arbetsbok
Mha av XL4-makrofunktioner kan vi skapa en arbetsbladlista för enskilda arbetsböcker.
I första steget definieras ett namn, BladNamn, som refererar till följande formel:
="["&HÄMTA.DOKUMENT(68)&"]"
I nästa steg definieras ytterligare ett namn, Boknamn, vilket refererar till formeln:
=BYT.UT(HÄMTA.ARBETSBOK(1);BladNamn;"")&T(NU())
Den sista delen av formeln, T(NU()), gör att listan uppdateras när vi trycker på F9-tangenten vid en eventuell förändring av listan - Lägger till nya blad / tar bort blad.
I det sista steget skrivs följande formel in i cellen A1 och kopieras så långt det är önskvärt i kolumnen.
=INDEX(BokNamn;RAD())
Om listan börjar på rad 2 så måste det kompenseras i ovanstående formel:
=INDEX(BokNamn;RAD()-1)
För att samtliga bladnamn ska visas i listan så bör det blad som innehåller listan placeras först i arbetsboken.
För djupare inblick i XL4-makron - se XL-4 makrofunktioner.
Resultatet kan se ut som bilden nedan:
Ett enklare sätt, om än inte med lika fint slutresultat, är:
1. Skapa ett namn, t ex Bladnamn.
2. Referera till följande formel: =TRANSPONERA(HÄMTA.ARBETSBOK(1))
3. Markera ett flertal celler i ett kalkylblad.
4. Mata in följande: =Bladnamn och gör den till en matrisformel.
Antal rader mellan högsta och lägsta värdena
I detta tips visas hur vi kan erhålla antal rader mellan det högsta värdet i en lista och det lägsta värdet i en annan lista.
Exemplet presenteras i sin helhet i följande bild:
I lista 1 återfinns det högsta värdet på rad 7 och i lista 2 återfinns det lägsta värdet på rad 2. Antal rader differens uppgår till 5.
Följande formel ligger till grund för lösningen:
- =ABS(PASSA(MAX(A2:A7);A2:A7;0)-PASSA(MIN(B2:B7);B2:B7;0))
Skapa referenser
Här demonstreras en teknik för att skapa referenser till andra arbetsblad i samma arbetsbok som enkelt kan kopieras nedåt i kolumnen eller i raden.
Tipset är att rekommenderas när data ska sammanställas och har samma struktur.
Vissa förutsättningar krävs dock:
- Underliggande data måste ligga på rader och
- har samma placering i varje arbetsblad som data ska hämtas ifrån samt
- att arbetsbladnamnet anges i sammanställningen (se endan).
- M a o, en mallstruktur måste föreligga.
Bilden nedan visas exemplet i sin helhet och efter det att kopiering har skett till närliggande celler:
Följande formel skapas i cell B2 och som därefter kopieras
- =INDIREKT($A2&"!"&EXTEXT(ADRESS(RAD();KOLUMN());2;HITTA("$";ADRESS(RAD();KOLUMN());2)-2)&"2")
Skapa matristabelluppställningHär visas hur vi på ett relativt enkelt sätt kan skapa en uppställning för en matristabell.
Bilden nedan visar exemplet i sin helhet:
Följande formeln används:
- =RAD()&":"&KOLUMN()
Skapa formeln i t ex cell A1 och kopiera såväl nedåt i kolumn som i raden så långt det är önskvärt.
Fylla i cellerHär visas ett tips om hur vi kan fylla celler med t ex specialtecken, dvs varje cell fylls upp till sin kolumnbredd med ett och samma tecken. Tipset underlättar arbetet vid framtagning av mallar o d.
Alternativ 1
1. Markera de celler som ska fyllas i.
2. Välj kommandot Format | Celler | Fliken Justering och ange uppgifterna såsom i följande bild:
Resultatet kan t ex se ut på följande sätt:
Alternativ 2Istället för att utföra det manuellt kan vi skapa cellformateringar för detta ändamål.
Cellformat:
- För att erhålla streck (-) i celler: @*-
- För att erhålla stjärnor (*) i celler: @**
- För att erhålla "brädgård" (#) i celler: @*#
För att fylla en cell matas det önskade tecknet in en gång i cellen. För att fylla flera celler krävs det att det önskade tecknet anges i varje cell (eller att cellkopiering sker).
Skapa namnserieHär visas hur vi enkelt kan skapa en lista, vilken beaktar om en kombination av tecken förekommer fler gånger. I exemplet ska en lista med första bokstaven i för- och efternamn skapas.
Exemplet visas i sin helhet i följande bild:
Följande formel anges i cell B2 och kopieras nedåt i kolumnen:
- =VÄNSTER(A2;1)&EXTEXT(A2;HITTA(" ";A2)+1;1)&
1+OM(ANTAL.OM($A3:$A$8;A2)>0;ANTAL.OM($A3:$A$8;A2);0)
Formeln har dock en begränsning: Om två namn har samma initialer t ex DD så skapas två DD1.
Skapa formatmall för punktlistor
Här visas hur vi relativt enkelt kan skapa en formatmall för punktlistor.
- Markera en cell.
- Välj kommandot Format | Formatmall.
- I dialogrutan "Formatmall" anges t ex namnet Punktlista i textrutan för Namn.
- Klicka på knappen "Ändra..." och välj fliken Tal i dialogrutan "Formatera celler".
- Under kategori markeras först "Text" sedan kategorin "Anpassat".
- I fältet för Typ ska nu visas @.
- Ställ markören före @-tecknet och ange kommandot ALT+0149 samt infoga ett mellanslag.
- Nu ska det i fältet för Typ visas • @.
- Avsluta dialogrutan via OK-knappen och upprepa det en gång till för Formatmall-dialogrutan.
Den nya formatmallen kan nu appliceras genom att:
- Markera de celler som ska formateras.
- Välj kommandot Format | Formatmall...
- Välj t ex namnet Punktlista i dialogrutan och stäng den därefter.
- Klart!
Bilden nedan visar hur en formaterad punktlista kan se ut:
Jämföra två cellområden
I detta tips visas hur vi relativts enkelt kan jämföra två cellområden med varandra för att se vilka celler som eventuellt har ändrats. De cellområden som ska jämföras behöver inte nödvändigtvis vara på samma arbetsblad utan kan förekomma både i separata arbetsblad i en och samma arbetsbok eller i två separata arbetsböcker.
Hela exemplet visas i följande bild:
Steg 1 - Skapa utfallen SANT eller FALSKT
Markera cellområdet G2:H5 och se till att cellen G2 är den aktiva cellen.
Skriv in följande formel: =A2:B5=D2:E5 och bekräfta inmatningen med kommandot Ctrl+Skift+Enter.
Är formeln korrekt inmatad visar hela cellområdet formeln {=A2:B5=D2:E5}
En enklare lösning är dock följande:
Markera cellområdet G2:H5 och se till att cellen G2 är den aktiva cellen.
Skriv in följande formel: =A2=D2 och bekräfta inmatningen med kommandot Ctrl+Enter.
Steg 2- Skapa villkorsstyrd formatering
Markera cellområdet G2:H5
Välj kommandot Format | Villkorsstyrd formatering... och ange Villkor 1 till "Cellvärde", "Lika med", FALSKT samt formatera enligt egna önskemål.