
Generisk formel
(=ROW(INDIRECT(start&":"&end)))
Sammanfattning
För att skapa en rad siffror som (1; 2; 3; 4; 5) kan du använda en formel baserad på ROW- och INDIRECT-funktionerna. Denna teknik används oftast i arrayformler som behöver en numerisk array för bearbetning av något slag. I exemplet som visas är formeln i D5:
(=ROW(INDIRECT(B5&":"&C5)))
som returnerar en matris som (1; 2; 3; 4; 5).
Obs! När Excel anges i en enda cell visar Excel bara det första objektet i matrisen. Använd F9 i formelfältet för att se det faktiska arrayresultatet. Normalt kommer du att använda denna formel i en större matrisformel, angiven med kontroll + shift + enter.
Förklaring
Obs! I Excel 365 är den nya SEKVENSFunktionen ett bättre och enklare sätt att skapa en mängd siffror. Metoden som förklaras nedan fungerar i tidigare versioner.
Kärnan i denna formel är en sträng som representerar rader. Till exempel, för att skapa en matris med 10 nummer kan du hårdkoda en sträng i INDIRECT så här:
=ROW(INDIRECT("1:10"))
INDIRECT-funktionen tolkar texten så att den betyder intervallet 1:10 (10 rader) och ROW-funktionen returnerar radnumret för varje rad i det intervallet i en matris.
Exemplet som visas använder en mer generisk version av formeln som plockar upp start- och slutnummer från B5 respektive C5, så lösningen ser ut så här:
=ROW(INDIRECT(B5&":"&C5)) =ROW(INDIRECT(1&":"&5)) =ROW(INDIRECT("1:5")) =ROW(1:5) =(1;2;3;4;5)
Anledningen till att INDIRECT används i formeln är att skydda sig mot ändringar i kalkylbladet. Utan INDIRECT kan infogning eller radering av rader ändra områdesreferensen, till exempel:
=ROW(1:5)
ändras till:
=ROW(1:4)
Om rad 1 raderas. Eftersom INDIRECT fungerar med en referens konstruerad med text påverkas den inte av ändringar i kalkylbladet.
Relativa radnummer i ett intervall
Om du behöver en matris som består av de relativa radnumren i ett intervall kan du använda en sådan formel:
=ROW(range)-ROW(range.firstcell)+1
Se den här sidan för en fullständig förklaring.
Negativa värden
ROW-funktionen hanterar inte negativa tal, så du kan inte blanda in negativa siffror för start och slut . Du kan dock tillämpa matematiska operationer i den matris som skapats av ROW. Till exempel kommer följande formel att skapa denna matris: (-5; -4; -3; -2; -1)
=ROW(INDIRECT(1&":"&5))-6
Siffror i omvänd ordning, n till 1
För att skapa en rad positiva tal i fallande ordning, från n till 1, kan du använda en sådan formel:
=ABS(ROW(INDIRECT("1:"&n))-(n+1))