Excel ADDRESS-funktion til at få celleadresse og mere

  • Del Dette
Michael Brown

Vejledningen giver en kort introduktion til ADDRESS-funktionens syntaks og viser, hvordan du bruger den til at returnere en Excel-celleadresse og meget mere.

For at oprette en cellereference i Excel kan du skrive kolonne- og rækkekoordinaterne manuelt. Alternativt kan du få en Excel-celleadresse fra de række- og kolonnumre, der er angivet i ADDRESS-funktionen. Denne teknik er næsten meningsløs alene, men i kombination med andre funktioner kan den være den eneste løsning i situationer, hvor det ikke er muligt at henvise direkte til en celle.

    Excel ADDRESS-funktionen - syntaks og grundlæggende anvendelser

    ADDRESS-funktionen er designet til at hente en celleadresse i Excel baseret på de angivne række- og kolonnetal. En celleadresse returneres som en tekststreng, ikke som en egentlig reference.

    Funktionen er tilgængelig i alle versioner af Excel til Microsoft 365 - Excel 2007.

    Syntaksen for ADDRESS-funktionen er som følger:

    ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text])

    De to første argumenter er nødvendige:

    row_num - det rækkenummer, der skal bruges i cellehenvisningen.

    kolonne_nummer - kolonnenummeret for at opbygge cellehenvisningen.

    De sidste tre argumenter, som angiver cellehenvisningsformatet, er valgfrie:

    abs_num - referencetypen, absolut eller relativ. Den kan have et af nedenstående tal; standardværdien er absolut.

    • 1 eller udeladt - absolut cellereference som $A$1
    • 2 - blandet reference: relativ kolonne og absolut række som A$1
    • 3 - blandet reference: absolut kolonne og relativ række som $A1
    • 4 - relativ cellereference, f.eks. A1

    a1 - referencestilen, A1 eller R1C1. Hvis den udelades, anvendes standardstilen A1.

    • 1 eller TRUE eller udeladt - returnerer celleadressen i A1-referencestilen, hvor kolonnerne er bogstaver og rækkerne er tal.
    • 0 eller FALSK - returnerer celleadressen i R1C1-referencestilen, hvor rækker og kolonner er repræsenteret ved tal.

    ark_tekst - navnet på det regneark, der skal medtages i den eksterne reference. Navnet på arket skal angives som en tekststreng og omsluttes af anførselstegn, f.eks. "Sheet2". Hvis det ikke angives, bruges der ikke noget regnearknavn, og adressen er som standard det aktuelle ark.

    For eksempel:

    =ADRESSE(1,1) - returnerer adressen på den første celle (dvs. cellen i skæringspunktet mellem den første række og den første kolonne) som en absolut cellehenvisning $A$1.

    =ADRESSE(1,1,4) - returnerer adressen på den første celle som en relativ cellehenvisning A1.

    I den følgende tabel finder du et par andre referencetyper, som kan returneres af ADDRESS-formler.

    Formel Resultat Beskrivelse
    =ADRESSE(1,2) $B$1 Absolut cellereference
    =ADRESSE(1,2,4) B1 Relativ cellereference
    =ADRESSE(1,2,2,2) B$1 Relativ kolonne og absolut række
    =ADRESSE(1,2,3) $B1 Absolut kolonne og relativ række
    =ADRESSE(1,2,1,1,FALSE) R1C2 Absolut reference i R1C1-stil
    =ADRESSE(1,2,4,4,FALSE) R[1]C[2] Relativ reference i R1C1-stil
    =ADDRESS(1,2,1,,, "Ark2") Ark2!$B$$1 Absolut reference til et andet ark
    =ADDRESS(1,2,4,,, "Ark2") Ark2!B1 Relativ henvisning til et andet ark

    Sådan bruger du ADDRESS-funktionen i Excel - eksempler på formler

    Nedenstående eksempler viser, hvordan du kan bruge ADDRESS-funktionen i større formler til at udføre mere vanskelige opgaver.

    Returnerer en celleværdi i en given række og kolonne

    Hvis dit mål er at få en værdi fra en bestemt celle baseret på dens række- og kolonnetal, skal du bruge ADDRESS-funktionen sammen med INDIRECT:

    INDIREKTE(ADRESSE(række_nummer, kolonne_nummer))

    ADDRESS-funktionen udsender celleadressen som tekst. INDIRECT-funktionen omdanner denne tekst til en normal reference og returnerer værdien fra den tilsvarende celle.

    Hvis du f.eks. vil få en celleværdi baseret på rækkenummeret i E1 og kolonnenummeret i E2, skal du bruge denne formel:

    =INDIRECT(ADRESSE(E1,E2))

    Hent adressen på en celle med den højeste eller laveste værdi

    I dette eksempel finder vi først den højeste og laveste værdi i intervallet B2:B7 ved hjælp af MAX- og MIN-funktionerne, hvorefter vi udsender disse værdier i særlige celler:

    Celle E2: =MAX(B2:B7)

    Celle F2: =MIN(B2:B7)

    Derefter bruger vi ADDRESS i kombination med MATCH-funktionen til at få celleadresserne.

    Celle med den maksimale værdi:

    =ADRESSE(MATCH(E2,B:B,0), KOLONNE(B2))

    Celle med min-værdien:

    =ADRESSE(MATCH(F2,B:B,0), KOLONNE(B2))

    Hvis du ikke ønsker den højeste og laveste værdi i separate celler, kan du integrere MAX/MIN-funktionen i det første argument i MATCH. F.eks:

    Celle med den højeste værdi:

    =ADRESSE(MATCH(MATCH(MAX(B2:B7),B:B,0), KOLONNE(B2)))

    Celle med den laveste værdi:

    =ADRESSE(MATCH(MATCH(MIN(B2:B7),B:B,0),B:B,0), KOLONNE(B2))

    Sådan fungerer disse formler

    For at finde rækkens nummer bruger du funktionen MATCH(lookup_value, lookup_array, [match_type]), der returnerer en relativ position for lookup_value i lookup_array. I vores formel er lookup-værdien det nummer, der returneres af MAX- eller MIN-funktionen, og lookup-array er hele kolonnen. Derfor passer en relativ position for lookup-værdien i arrayet nøjagtigt til rækkens nummer på arket.

    For at finde kolonnenummeret bruger du funktionen COLUM. Der er selvfølgelig intet til hinder for at skrive nummeret direkte i formlen, men COLUMN sparer dig for besværet med at tælle manuelt, hvis målkolonnen er midt i arket.

    Hent et kolonnebogstav fra et kolonnetal

    Hvis du vil omdanne et tal til et kolonnebogstav, skal du bruge ADDRESS-funktionen inden for SUBSTITUTE:

    SUBSTITUTE(ADRESSE(1, kolonne_nummer ,4), "1","")

    Lad os f.eks. finde det kolonnebogstav, der svarer til tallet i A2:

    =SUBSTITUT(ADRESSE(1,A2,4), "1",""")

    Når vi ser på resultaterne nedenfor, kan vi konstatere, at den første kolonne på arket er A, hvilket er indlysende; den 10. kolonne er J, den 50. kolonne er AX, og den 100. kolonne er CV:

    Sådan fungerer denne formel

    Til at begynde med skal du konfigurere ADDRESS-funktionen til at returnere en relativ reference til den første celle i målkolonnen:

    • Brug 1 som rækkenummer.
    • For kolonnenummeret skal du angive en henvisning til den celle, der indeholder nummeret, A2 i vores eksempel.
    • Indtast 4 som abs_num-argument.

    Resultatet er, at ADDRESS(1,A2,4) ville give A1.

    Hvis du vil slippe af med rækkekoordinaten, skal du pakke ovenstående formel ind i SUBSTITUTE-funktionen og erstatte "1" med en tom streng ("""). Færdig!

    Hent adressen på et navngivet område

    For at finde adressen på et navngivet område i Excel skal du først finde den første og sidste cellehenvisning og derefter sammenføje dem. Dette fungerer lidt forskelligt i Excel før dynamisk (2019 og ældre) og Excel med dynamisk område (Office 365 og Excel 2021). Nedenstående eksempler er for Excel 2019 - Excel 2007. Vejledningen for Excel 365 og Excel 2021 findes her.

    Sådan får du adressen på den første celle i et område

    Hvis du vil returnere en henvisning til den første celle i et navngivet område, skal du bruge denne generiske formel:

    ADRESSE(RÆKKE( rækkevidde ),COLUMN( rækkevidde ))

    Hvis vi antager, at området hedder "Salg", ser den rigtige formel således ud:

    =ADRESSE(RÆKKE(Salg), COLUMN(Salg))

    Og returnerer adressen på den øverste venstre celle i intervallet:

    I denne formel returnerer funktionerne ROW og COLUMN et array med henholdsvis alle række- og kolonnetallene i området. På grundlag af disse tal opbygger funktionen ADDRESS et array med celleadresser. Men da formlen indtastes i en enkelt celle, vises kun det første element i arrayet, som svarer til den første celle i området.

    Sådan får du adressen på den sidste celle i et område

    Du kan finde adressen på den sidste celle i et navngivet område ved at bruge denne generiske formel:

    ADRESSE(RÆKKE( rækkevidde )+ROWS( rækkevidde )-1,COLUMN( rækkevidde )+OLUMNS( rækkevidde )-1)

    Hvis vi anvender formlen på vores område "Salg", får den følgende formular følgende form:

    =ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)

    Og returnerer referencen til den nederste højre celle i intervallet:

    Denne gang har vi brug for lidt mere komplekse beregninger for at finde ud af rækkeantallet. Ligesom i det foregående eksempel giver ROW-funktionen os et array med alle rækkeantallet i intervallet, {4;5;6;7} i vores tilfælde. Vi skal "forskyde" disse tal med det samlede antal rækker minus 1, så det første element i arrayet bliver det sidste rækkeantallet. For at finde det samlede antal rækker bruger vi ROWS-funktionen ogtrække 1 fra resultatet: (4-1=3). Derefter føjer vi 3 til hvert element i det oprindelige array for at foretage det nødvendige skift: {4;5;6;7} + 3 = {7;8;9;10}.

    Kolonnens nummer beregnes på samme måde: {2,3,4}+3-1 = {4,5,6}

    Ud fra ovenstående arrays af række- og kolonnetal samler ADDRESS-funktionen et array af celleadresser, men returnerer kun den første, der svarer til den sidste celle i området.

    Det samme resultat kan også opnås ved at vælge de maksimale værdier fra arrays af række- og kolonnetal. Dette virker dog kun i en arrayformel, som kræver, at du trykker på Ctrl + Shift + Enter for at blive udfyldt korrekt:

    =ADRESSE(MAX(RÆKKE(Salg)), MAX(COLUMN(Salg)))

    Sådan får du den fulde adresse på et navngivet område

    Hvis du vil have den komplette adresse for et navngivet område tilbage, skal du blot sammenkæde de to formler fra de foregående eksempler og indsætte intervaloperatoren (:) imellem dem.

    ADRESSE(RÆKKE( rækkevidde ), COLUMN( rækkevidde ))) & ":" & ADDRESS(ROW( rækkevidde ) + ROWS( rækkevidde )-1, COLUMN( rækkevidde ) + COLUMNS( rækkevidde )-1)

    For at få det til at fungere for vores eksempeldatasæt erstatter vi det generiske "range" med det rigtige navn "Sales":

    =ADDRESS(ROW(Sales), COLUMN(Sales))) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1)

    Og få den komplette områdeadresse som en absolut reference $B$4:$D$7:

    Hvis du vil returnere områdeadressen som en relativ reference (uden $-tegnet, som B4:D7), skal du sætte abs_num-argumentet i begge ADDRESS-funktioner til 4:

    =ADDRESS(ROW(Sales), COLUMN(Sales), 4) & ":" & ADDRESS(ROW(Sales) + ROWS(Sales)-1, COLUMN(Sales) + COLUMNS(Sales)-1, 4)

    De samme ændringer kan naturligvis foretages i de enkelte formler for den første og sidste celle, og resultatet vil ligne dette:

    Sådan får du adressen på et navngivet område i Excel 365 og Excel 2021

    I modsætning til den traditionelle "én formel - én celle"-adfærd i ældre versioner gør alle formler, der potentielt kan returnere flere værdier, dette automatisk i det nye Excel. En sådan adfærd kaldes spilling.

    I stedet for at returnere adressen på den første celle, udsender nedenstående formel f.eks. adresserne på hver enkelt celle i et navngivet område:

    =ADRESSE(RÆKKE(Salg), COLUMN(Salg))

    For at få adressen på første celle skal du kun aktivere implicit krydsning, som er aktiveret som standard i Excel 2019 og ældre. For at gøre dette skal du sætte symbolet @ (implicit krydsningsoperator) foran områdenavnene:

    =ADDRESS(@ROW(Salg), @COLUMN(Salg))

    På samme måde kan du rette andre formler.

    For at få sidste celle i området:

    =ADDRESS(@ROW(Salg) + ROWS(Salg)-1, @COLUMN(Salg) + COLUMNS(Salg)-1)

    For at få den adresse på et navngivet område :

    =ADDRESS(@ROW(Sales), @COLUMN(Sales))) & ":" & ADDRESS(@ROW(Sales) + ROWS(Sales)-1, @COLUMN(Sales) + COLUMNS(Sales)-1)

    Nedenstående skærmbillede viser resultaterne:

    Tip. Når du åbner et regneark med formler, der er oprettet i en ældre version i Excel med dynamisk array, indsætter Excel automatisk en implicit skæringoperator.

    Sådan returnerer du en celleadresse i Excel. Hvis du vil se nærmere på alle de formler, der er beskrevet i denne vejledning, er du velkommen til at downloade vores prøvearbejdsmappe nedenfor. Jeg takker dig for at læse og håber at se dig på vores blog i næste uge!

    Arbejdsbog til download

    Excel ADDRESS-funktion - eksempler på formler (.xlsx-fil)

    Michael Brown er en dedikeret teknologientusiast med en passion for at forenkle komplekse processer ved hjælp af softwareværktøjer. Med mere end ti års erfaring i teknologibranchen har han finpudset sine færdigheder i Microsoft Excel og Outlook samt Google Sheets og Docs. Michaels blog er dedikeret til at dele sin viden og ekspertise med andre og giver nemme at følge tips og vejledninger til at forbedre produktiviteten og effektiviteten. Uanset om du er en erfaren professionel eller nybegynder, tilbyder Michaels blog værdifuld indsigt og praktiske råd til at få mest muligt ud af disse vigtige softwareværktøjer.