11. september 2017 - 13:12 Der er 4 kommentarer

Makro - den vil ikke gå ned på næste linje på ARK2.??

Hej

Min makro vil ikke springe ned på næste linje på ark2. den bliver ved med at overskrive den forgående linje? nogle der kan hjælpe mig?

Sub flytdata()

Dim targetRow As Long


' finder første tomme række i ark2
targetRow = Worksheets("Ark2").Range("A65536").End(xlUp).Row + 1

' kopierer aktiv række
ActiveSheet.Range("A12").Activate
'Tester om celle A12 på Ark1 er tom
Set rCell = Range("A12")
If IsEmpty(rCell) Then
  MsgBox "CELLE " & "A12" & " MÅ IKKE VÆRE TOM!."
  Else
    'Hvis Ark1 Celle A12 er udfyldt kopieres række 2
    'Rows(ActiveCell.Row & ":" & ActiveCell.Row).Copy
    Worksheets("Ark1").Range("A12:J12").Copy
        Worksheets("Ark2").Select
        'ophæv beskyttelse på Ark
        ActiveWorkbook.ActiveSheet.Unprotect "semler"
            ' vælger kopiarket og den første ledige række og indsætter
            'Worksheets("Ark1").Range("A12:J12").Copy
            ActiveSheet.Paste

            'Rows(targetRow & ":" & targetRow).Select
            'ActiveSheet.Paste
            ActiveWorkbook.ActiveSheet.Protect "semler"
        ' tilbage til originalarket
        Worksheets("Ark1").Select
    ' Ophæv markeringen af kopering af række
    Application.CutCopyMode = False
' flytter cursor til celle A12
ActiveSheet.Range("A12").Activate
'sletter række A12 så den er klar til en ny indtastning
Rows(ActiveCell.Row & ":" & ActiveCell.Row).Delete
End If



End Sub
Avatar billede finb Ekspert
11. september 2017 - 13:23 #1
Du mangler en .offset(1,0).paste
11. september 2017 - 13:45 #2
Hvor skal den sættes ind henne af?
Avatar billede kabbak Professor
11. september 2017 - 15:28 #3
Sub flytdata()

    Dim targetRow As Long
    Worksheets("Ark1").Activate
    ' kopierer aktiv række
    'Tester om celle A12 på Ark1 er tom
    If IsEmpty(Worksheets("Ark1").Range("A12")) Then
        MsgBox "CELLE " & "A12" & " MÅ IKKE VÆRE TOM!."
    Else
        'Hvis Ark1 Celle A12 er udfyldt kopieres række 12
        'ophæv beskyttelse på Ark
        Worksheets("Ark2").Unprotect "semler" ' finder første tomme række i ark2
    targetRow = Worksheets("Ark2").Range("A65536").End(xlUp).Row + 1
        'Worksheets("Ark1").Range("A12:J12").Copy
        ' vælger kopiarket og den første ledige række og indsætter
        Worksheets("Ark1").Range("A12:J12").Copy Worksheets("Ark2").Range("A" & targetRow)
        Worksheets("Ark2").Protect "semler"
        ' flytter cursor til celle A12
      Range("A12").Activate
        'sletter række A12 så den er klar til en ny indtastning
        Rows(ActiveCell.Row & ":" & ActiveCell.Row).Delete
    End If
End Sub
Avatar billede store-morten Ekspert
11. september 2017 - 18:03 #4
Sub flyt_data()
    Dim targetRow As Long
        Worksheets("Ark1").Activate
        'flytter cursor og Tester celle A12 på Ark1
        Range("A12").Activate
    If IsEmpty(ActiveCell) Then
        'Hvis Ark1 Celle A12 er tom
        MsgBox "CELLE " & "A12" & " MÅ IKKE VÆRE TOM!."
    Else
        'Hvis Ark1 Celle A12 er udfyldt
        'ophæv beskyttelse på Ark2
        Worksheets("Ark2").Unprotect "semler"
        'finder første tomme række i ark2
        targetRow = Worksheets("Ark2").Range("A65536").End(xlUp).Row + 1
        'Kopierer Ark1 celler A12:J12
        'og indsætter på første ledige række på Ark2
        Worksheets("Ark1").Range("A12:J12").Copy _
        Worksheets("Ark2").Range("A" & targetRow)
        'Sætter beskyttelse på Ark2
        Worksheets("Ark2").Protect "semler"
        'Sletter række 12 på Ark1 så den er klar til en ny indtastning
        Rows(12).Delete
    End If
End Sub
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