13. februar 2012 - 16:50Der er
10 kommentarer og 1 løsning
vba kode til flytte data mellem ark
Hej eksperter
Er der en som kunne lave en vba kode, som flytter data fra ark 1 til 16 over i ark 17 Den skal flytte rækker i kolonne a-f hvor f indholder tal fra 1 til 52 over til ark 17 med et række som er tom imellem hver ark der er flyttet.
den skal kopiere rækker fra kolonne A til F hvor f indholder tal mellem 1 til 52 Rækkerne skal stå under hinanden mellemrum kommer efter den har koperet data fra sheet 1, mellemrum data sheet 2, osv.
DestLine = 1 For n=1 to 16 LastRow = Range("F65536").End(xlUp).Row For m=1 to LastRow If ThisWorkbook.Sheets(n).Range("F" & m).Value <= 52 And ThisWorkbook.Sheets(n).Range("F" & m).Value >=1 then ThisWorkbook.Sheets(n).Range("A" & m & :F" & m).Copy Destination:= ThisWorkbook.Sheets(17).Range("A" & DestLine & :F" & DestLine) DestLine = DestLine + 1 End if Next DestLine = DestLine + 1 Next
DestLine = 1 For n=1 to 16 LastRow = ThisWorkbook.Sheets(n).Range("F65536").End(xlUp).Row For m=1 to LastRow If ThisWorkbook.Sheets(n).Range("F" & m).Value <= 52 And ThisWorkbook.Sheets(n).Range("F" & m).Value >=1 then ThisWorkbook.Sheets(n).Range("A" & m & :F" & m).Copy Destination:= ThisWorkbook.Sheets(17).Range("A" & DestLine & :F" & DestLine) DestLine = DestLine + 1 End if Next DestLine = DestLine + 1 Next
For F****N også! - Jeg er da for blød i dag - endnu to fejl! Undskyld igen!
DestLine = 1 For n=1 to 16 LastRow = ThisWorkbook.Sheets(n).Range("F65536").End(xlUp).Row For m=1 to LastRow If ThisWorkbook.Sheets(n).Range("F" & m).Value <= 52 And ThisWorkbook.Sheets(n).Range("F" & m).Value >=1 then ThisWorkbook.Sheets(n).Range("A" & m & ":F" & m).Copy Destination:= ThisWorkbook.Sheets(17).Range("A" & DestLine & ":F" & DestLine) DestLine = DestLine + 1 End if Next DestLine = DestLine + 1 Next
den skal ikke kopere område A1 til F52, der er 100 vis af rækker, den skal kopiere rækker over som indholder tal 1 til 52 sammen med rækker ved siden af
Fandt lige min arbejds-bærbar frem og testede. Den virker! :)
Private Sub CopyToSht17() DestLine = 1 For n=1 to 16 LastRow = ThisWorkbook.Sheets(n).Range("F65536").End(xlUp).Row For m=1 to LastRow If ThisWorkbook.Sheets(n).Range("F" & m).Value <= 52 And ThisWorkbook.Sheets(n).Range("F" & m).Value >=1 then ThisWorkbook.Sheets(n).Range("A" & m & ":F" & m).Copy Destination:= ThisWorkbook.Sheets(17).Range("A" & DestLine & ":F" & DestLine) DestLine = DestLine + 1 End if Next DestLine = DestLine + 1 Next End Sub
Jamen velbekomme! Må hellere poste den rigtige løsning som et "svar" :)
Private Sub CopyToSht17() DestLine = 1 For n=1 to 16 LastRow = ThisWorkbook.Sheets(n).Range("F65536").End(xlUp).Row For m=1 to LastRow If ThisWorkbook.Sheets(n).Range("F" & m).Value <= 52 And ThisWorkbook.Sheets(n).Range("F" & m).Value >=1 then ThisWorkbook.Sheets(n).Range("A" & m & ":F" & m).Copy Destination:= ThisWorkbook.Sheets(17).Range("A" & DestLine & ":F" & DestLine) DestLine = DestLine + 1 End if Next DestLine = DestLine + 1 Next End Sub
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.