22. februar 2016 - 12:20Der er
11 kommentarer og 1 løsning
Findes der en formel til automatisk at kopiere en formel fra een celle til flere (et antal gange svarende til værdien i en tredje celle)?
Jeg skal lave nogle beregninger på et Excel-udtræk over indkøbs-ordrer for en given måned. Jeg ved ikke, hvor mange ordrer der er afgivet i en given måned, hvilket betyder at der kan være et hvilket som helst antal rækker i Excel-arket.
Hver gang der er en række, skal jeg køre nogle specifikke formler. Formlerne selv er ikke problemet, antallet er. Findes der en måde at "læse" hvor mange rækker med indhold Excel-udtrækket har og derefter udfører en specifik formel på hver række? (Alternativet er, at indsætte formlerne på forhånd i samtlige rækker, hvilket kan gøre arket VIRKELIGT tungt at køre)
Jeg er nødt til at undgå makroer og lignende semi-manuelle løsninger, da den konsulent, som efterfølgende skal stå for driften af min model, ikke er nogen ørn til Excel og derfor ikke vil kunne finde ud af det. Basalt set skal hun bare kunne lave udtrækkene fra vores data-system, sætte dem ind på fast-navngivne faner i Excel-modellen, hvorefter alt andet foregår automatisk...
Løsningsmulighed 1: En makro kan evt. sættes til at køre fast når der f.eks. ændres i celle A1
Løsningsmulighed 2: (måske lidt tåbelig når jeg ikke kender struktur på dit ark/dokument) Hvis der er vilkårligt antal rækker må der indimellem også være færre rækker end sidste måned, så personen kan enten finde ud af at slette eller starter forfra hver måned, i så fald må det være til at lære at markere og dobbeltklikke så den kopierer ned til afslutning af regionen.
Løsningsmulighed 3: Counta eller lignende formel der kan tælle antal celler i f.eks. kolonne a der ikke er tomme - udfordringen er naturligvis hvis der er huller i datasættet? Kombineret med en indirekte formel kan du lave henvisninger til variabelt dataområde.
hvor du erstatter <din formel> med din egen beregning. Forudsætter, at kolonne A indeholder fx nummeret på indkøbsordren og er blank, hvis der ikke er flere.
Den bliver ikke for "tung" selv med rigtig mange mulige rækker, da den tunge udregning kun laves, hvis der er en indkøbsordre.
Kim'la's løsningsmulighed 3 er umiddelbart den mest interessante, og også den, jeg først havde i tankerne. Men hvordan definerer jeg en formel, så den regner på alle rækkerne fra A1 til A(x) og stiller resultaterne op på en kolonne i ny fanes kolonne (et-eller-andet)?
Jeg laver udtræksfaner hvor der skal lægges nye dataudtræk ind hver måned. Dvs. fanerne vil hver gang starte som tomme. Udtrækkene er bygget ens op hver gang, dvs. ordrenr. i kolonne A, osv. men der er et vilkårligt antal ordrer, i.e. ukendt antal rækker.
Umiddelbart arbejder jeg med noget i stil med: =HVIS.FEJL(INDEKS($B$2:INDIREKTE("B"&$X$3); SAMMENLIGN(0; TÆL.HVIS($C$1:C1; $B$2:INDIREKTE("B"&$X$3)); 0));"")
Cellereferencerne er ikke endelige, da jeg sidder i et test-ark lige nu. Celle X3 henviser til en TÆLV-funktion, som optæller alle rækker i kolonne B (Kolonne B er her tænkt som kolonnen med ordre-nr.)
Formlen skal trække de unikke ordre-nr. ud af kolonne B og skrive dem i en kolonne på et nyt ark. Den virker fint, bortset fra, at jeg gerne ville begrænse den til at køre det antal gange der er ordre-nr. i kolonne B (dvs. det antal rækker, der er indhold i.)
Umiddelbart virker Acore's forslag som en god mulighed, hvis ikke der findes en måde at gøre antallet af beregninger mere dynamisk på.
Jeg har besluttet at følge acores forslag, da det er den mest simple løsning (og dermed giver mindre chance for problemer for den ansvarlige konsulent).
Jeg siger tusind tak for hjælpen til alle.
Acore, hvis du vil være så venlig at skrive et svar, så du kan få points, vil jeg sætte pris på det.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.