
Generisk formel
(=ROW(INDIRECT(start&":"&end)))
Resumé
For at oprette en række tal som (1; 2; 3; 4; 5) kan du bruge en formel baseret på ROW- og INDIRECT-funktionerne. Denne teknik bruges oftest i matrixformler, der har brug for et numerisk array til behandling af en slags. I det viste eksempel er formlen i D5:
(=ROW(INDIRECT(B5&":"&C5)))
som returnerer en matrix som (1; 2; 3; 4; 5).
Bemærk: når den indtastes i en enkelt celle, viser Excel kun det første element i matrixen. Brug F9 i formellinjen for at se det aktuelle array-resultat. Normalt bruger du denne formel i en større matrixformel, indtastet med kontrol + skift + enter.
Forklaring
Bemærk: I Excel 365 er den nye SEQUENCE-funktion en bedre og lettere måde at oprette en række numre på. Metoden forklaret nedenfor fungerer i tidligere versioner.
Kernen i denne formel er en streng, der repræsenterer rækker. For eksempel, for at oprette en matrix med 10 tal, kan du hårdkode en streng i INDIRECT som denne:
=ROW(INDIRECT("1:10"))
INDIRECT-funktionen fortolker denne tekst til at betyde området 1:10 (10 rækker), og ROW-funktionen returnerer række nummeret for hver række i det interval inden i en matrix.
Det viste eksempel bruger en mere generisk version af formlen, der henter start- og slutnumrene fra henholdsvis B5 og C5, så løsningen ser sådan ud:
=ROW(INDIRECT(B5&":"&C5)) =ROW(INDIRECT(1&":"&5)) =ROW(INDIRECT("1:5")) =ROW(1:5) =(1;2;3;4;5)
Årsagen til, at INDIRECT bruges i formlen, er at beskytte mod ændringer i regneark. Uden INDIRECT kan indsættelse eller sletning af rækker ændre rækkevidden for f.eks.
=ROW(1:5)
vil skifte til:
=ROW(1:4)
Hvis række 1 slettes. Da INDIRECT fungerer med en reference konstrueret med tekst, påvirkes den ikke af ændringer på regnearket.
Relative rækkenumre i et interval
Hvis du har brug for et array, der består af de relative rækkenumre i et interval, kan du bruge en formel som denne:
=ROW(range)-ROW(range.firstcell)+1
Se denne side for en fuldstændig forklaring.
Negative værdier
ROW-funktionen håndterer ikke negative tal, så du kan ikke blande negative tal til start og slut . Du kan dog anvende matematiske operationer til det array, der er oprettet af ROW. For eksempel opretter følgende formel dette array: (-5; -4; -3; -2; -1)
=ROW(INDIRECT(1&":"&5))-6
Tal i omvendt rækkefølge, n til 1
For at oprette en række positive tal i faldende rækkefølge, fra n til 1, kan du bruge en formel som denne:
=ABS(ROW(INDIRECT("1:"&n))-(n+1))