Avatar billede zips Juniormester
02. oktober 2014 - 15:49 Der er 3 kommentarer og
1 løsning

Flyt og slette række i ark1 til ark2 og sotere dette.

Er der en som vil hjælpe med mit regneark?

Jeg har et regneark med 2 ark som bruges til opgaver der skal løses, i ark1 stå alle opgaver fra A2 og helt til bunden af arket, eller alt efter hvor mange opgaver det bliver i løbet af året, efterhånden som de afsluttes, skriver jeg en dato i kolonne J for den række som opgaven er udført, derefter klipper jeg rækken og flytter den om på ark2, herefter sletter jeg den tomme række i ark1, i ark2 sorteret jeg efter dato på de afsluttet opgaver.

Er det muligt at lave dette automatisk eller med en knap? 

Det er excel 2010 dansk jeg bruger.
Avatar billede supertekst Ekspert
02. oktober 2014 - 18:08 #1
Ja - via en makro
Du er velkommen til at sende en model. @-adresse under min profil
- så skal jeg forsøge.
Avatar billede supertekst Ekspert
04. oktober 2014 - 13:26 #2
Rem VBA-koden anbringes under første ark
rem Højrekllik på fanen / Vis programkode / indsæt her / Gem og Luk

Option Explicit
Dim række As Integer, ledigRække As Integer, antalRækker As Integer
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 10 And IsDate(Target) = True And InStr(Target.Address, ":") = 0 Then
        ActiveWorkbook.Sheets("Afsluttede").Activate
        ActiveSheet.Range("J1").Select
        Selection.AutoFilter                          'slå autofilter fra på side 2
       
        ActiveWorkbook.Sheets("Alle indkomne").Activate
        række = Target.Row
        ActiveSheet.Rows(række & ":" & række).Activate
        Selection.Copy
       
        ActiveWorkbook.Sheets("Afsluttede").Activate
       
Rem Søg tom celle i kolonne A
        ActiveSheet.Range("A1").Select
        antalRækker = ActiveCell.SpecialCells(xlLastCell).Row
       
        ledigRække = findRække("Afsluttede", "A1:A" & antalRækker, "")
        ActiveSheet.Range("A" & ledigRække).Select
        ActiveSheet.Paste
        Application.CutCopyMode = False

Rem sortering lægges her
        sortering (ledigRække)

Rem Slet rækken med afsluttet opgave
        ActiveWorkbook.Sheets("Alle indkomne").Activate
        ActiveSheet.Rows(række & ":" & række).Activate
        Selection.Delete
    End If
End Sub
Private Sub sortering(sidsteRække)
    ActiveWorkbook.Worksheets("Afsluttede").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Afsluttede").Sort.SortFields.Add Key:=Range( _
        "J1:J" & sidsteRække), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Afsluttede").Sort
        .SetRange Range("A1:J" & sidsteRække)
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Private Function findRække(ark, område, værdi)
Dim c As Object
    With ActiveWorkbook.Sheets(ark).Range(område)
        Set c = .Find(værdi, LookIn:=xlValues, LookAt:=xlWhole)
        If Not c Is Nothing Then
            findRække = c.Row
        Else
            findRække = 0
        End If
    End With
End Function
Avatar billede zips Juniormester
05. oktober 2014 - 19:01 #3
Det er super, lige som jeg ønskede :)

Mange tak for hjælpen.
Avatar billede supertekst Ekspert
05. oktober 2014 - 22:42 #4
Selv tak..
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

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