Avatar billede sjssjdk Mester
17. juni 2015 - 08:47 Der er 4 kommentarer og
1 løsning

Macro indsæt række med formatering

Hej.

Jeg har, med hjælp fra bruger herinde, lavet en macro der indsætter en række et bestemt sted på en side.

Jeg kunne godt tænke mig at få den til at kopire de formler med som var i den række der står under.

Jeg bruger følgende macro:

Row = WorksheetFunction.Match("Hustype 2", Range("B:B"), 0) + 1
Sheets("1").Range("A" & Row).EntireRow.Insert Shift:=xlDown

Den indsætter en ny række præcis hvor jeg ønsker det. Dog vil jeg meget gerne at den tager formateringen med fra de celler der står under.

Kan det lade sig gøre?

Se billede: http://web.gratisupload.dk/f/8s8rkcj4lr/

På forhånd tak.
Mvh
Søren J.
Avatar billede jens48 Ekspert
17. juni 2015 - 11:23 #1
Du kan for eksempel bruge nedenstående:

Row = WorksheetFunction.Match("Hustype 2", Range("B:B"), 0) + 1
Sheets("1").Range("A" & Row).EntireRow.Copy
Sheets("1").Range("A" & Row).EntireRow.insert Shift:=xlDown
Application.CutCopyMode = False
Avatar billede sjssjdk Mester
17. juni 2015 - 13:08 #2
1000-Tak.

Det løste mit problem :)

Dog et inkelt spørgsmål, er det muligt så at få slettet indholdet i første celle, sådan at der ikke blot kommer til at stå det samme i cellerne. ?

Fx hvis celle 2 afhænger af en værdi eller indtastning i 1. celle.

mvh
Søren
Avatar billede sjssjdk Mester
17. juni 2015 - 15:01 #3
Hej.

Hvis jeg ønsker at der skal kopires fra rækken ovenfor skal jeg blot ændre Down til up?

Syntes nemlig ikke jeg kan få det til at virke.
Gør jeg noget forkert så?

Row = WorksheetFunction.Match("Hustype 2", Range("B:B"), 0) + 1
Sheets("1").Range("A" & Row).EntireRow.Copy
Sheets("1").Range("A" & Row).EntireRow.insert Shift:=xlUp
Application.CutCopyMode = False
Avatar billede jens48 Ekspert
17. juni 2015 - 15:35 #4
Når du indsætter kan du enten vælge at forskyde cellerne nedad eller til højre. Ved insætning af en hel række kan der kun forskydes nedad.

Når du sletter kan du enten vælge at forskyde cellerne opad eller til Venstre. Ved sletning af en hel række kan der kun forskydes opad.
Avatar billede jens48 Ekspert
17. juni 2015 - 15:42 #5
Row = WorksheetFunction.Match("Hustype 2", Range("B:B"), 0) + 1
Sheets("1").Range("A" & Row).EntireRow.Copy
Sheets("1").Range("A" & Row).EntireRow.Insert Shift:=xlDown
Cells(Row, 1).ClearContents
Application.CutCopyMode = False

Den vil slette det, der står i kolonne A i indsatte række
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester