Avatar billede sjssjdk Mester
19. juni 2015 - 07:53 Der er 8 kommentarer

Macro kopier celler baseret på anden celles værdi

Hej.

Jeg vil gerne have kopieret nogle celler baseret på andes celles værdi.

Fx.
Hvis B36 = X

Så kopieres række 45 ind mellem 38 og 39.

Se evt billede:
http://web.gratisupload.dk/f/8s9sbwogpi/


Er der en der kan hjælpe mig med den macro?

mvh
Søren
Avatar billede sjssjdk Mester
19. juni 2015 - 07:58 #1
Og cellen skal selvfølgelig slettes hvis X'et fjernes igen.
Avatar billede jens48 Ekspert
19. juni 2015 - 18:18 #2
Du kan bruge denne makro.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B36")) Is Nothing Then
If WorksheetFunction.Proper(Target) = "X" And Target.Offset(7, 0) = "Kopier" Then
Rows(45).Copy
Cells(39, 1).EntireRow.Insert
Else
If Target = "" And Target.Offset(8, 0) = "Kopier" Then
Rows(39).Delete
End If
End If
Application.CutCopyMode = False
End If
End Sub
Avatar billede sjssjdk Mester
23. juni 2015 - 07:26 #3
Tak for hjælpen Jens48.

Hvis jeg gerne vil have indsat flere rækker og ikke kun række 39, er det så let at ændre?
Avatar billede jens48 Ekspert
23. juni 2015 - 15:35 #4
Hvis du bruger denne makro, sætter den en linie ind hver gang du skriver "x" i B36 og sletter en linie hver gang du sletter det der står i B36 også selv om cellen allerede er tom

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B36")) Is Nothing Then
If WorksheetFunction.Proper(Target) = "X" Then
Rows(45).Copy
Cells(39, 1).EntireRow.Insert
Else
If Target = "" Then
Rows(39).Delete
End If
End If
Application.CutCopyMode = False
End If
End Sub
Avatar billede sjssjdk Mester
24. juni 2015 - 09:04 #5
Kan den let modificeres sådan at den finder det stede på arket hvor der står "Test". Derefter indsætter den flere rækker?

fx.

Når der sættes X i B36 så indsættes Linje 46 og 47 efter det sted på siden hvor der står Test.

Man kunne forstille sig at linje 46 og 47 stod på et andet ark der var stationær.

Jeg vil gerne have denne funktion flere steder på det samme ark, hvilket medføre at det sted hvor cellerne skal indsættes flyttes. derfor ønsker jeg at indbytte en funktion sådan at den selv finder stedet hvor der står Test og indsætter rækkerne. Det kan være forskelligt hvor mange rækker der skal indsættes alt efter hvor der er et x.

Håber det giver mening, og håber det kan lade sig gøre.
Avatar billede jens48 Ekspert
25. juni 2015 - 02:29 #6
Undskyld, men det er lidt svært at lave en makro når du hele tiden laver om på dine ønsker. Jeg opgiver.
Avatar billede sjssjdk Mester
25. juni 2015 - 07:26 #7
Hej Jens

Beklager meget. Men det er et projekt der har ændret sig en del siden jeg startede.

Men mange tak for din hjælp så langt.
Avatar billede jens48 Ekspert
03. juli 2015 - 00:28 #8
Måske kan du bruge dette:
http://gratisupload.dk/f/8sdve59t4i
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