19. december 2005 - 22:17Der er
6 kommentarer og 1 løsning
Makro til addition i stedet for overskrivning
Hej eksperter. Jeg har en makro, der kopierer værdierne fra en række felter B2 til AY2 i arket "Dataregistrering. Derefter paster makroen værdierne ind i en tilsvarende række i arket "Timeseddel - sagsregnskab". De to aktuelle makroliner ser således ud:
Jeg kunne godt tænke mig at ændre funktionen til, at makroen i stedet for bare at paste - og altså overskrive evt. tidligere indtastede værdier - i stedet at lægge værdierne til de pågældende felter i arket "Timeseddel - sagsregnskab". Er det muligt?
Dim X As Integer X = 0 For Each c In Sheets("Detaljeregistrering").Range("B2:ay2") Sheets("Timeseddel - sagsregnskab").Range("V" & lRow).Offset(0, X) = Sheets("Timeseddel - sagsregnskab").Range("V" & lRow).Offset(0, X) + c.Value X = X + 1 Next
sjap - det var perfekt. Jeg kendte heller ikke den funktion. Du lavede en lille fejl i din sætning, da du kom til at skrive "Paste:=xlAll" i stedet for "xlPasteValues". Men det ændre jo ikke ved, at du viste mig den egentlige funktion som jeg ledte efter, nemlig "Operation:=xlAdd". Det fungerer præcist som jeg havde håbet. Lægger du et svar?
Det betyder noget, fordi formatet (baggrundsfarve og celleramme og tekststørrelse) er forskellige på de to ark. Men for funktionen xlAdd gør det ganske rigtigt ingen forskel, og det var den jeg gik efter. Jeg skrev bare kommentaren for at gøre opmærksom på forskellen, dersom andre brugere skulle vælge bare at kopiere makroen. Så vil det jo være godt lige at være opmærksomme på hvilken model de vil bruge. Tak for hjælpen.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.