Avatar billede 2hans Juniormester
26. december 2014 - 18:58 Der er 9 kommentarer

kopiere dele af tabel til andet ark

Hejsa

Jeg har en lille sag, jeg ikke rigtigt kan få hul på :)

I store træk er problemet følgende:
Jeg har en tabel med 8 kolonner, a,b,c,d,e,f,g,h, og 108 rækker.
I kolonne a er indtastet datoer fra 1. januar 2014 til 31. december 2017.

Mit problem er, at jeg gerne skulle kunne kopiere dele af tabellen over i nye ark, ved at specificere et datotidsrum, f.eks. 1. februar 2015 til 31. marts 2015.

Alle kolonnerne for den specificerede tidsperiode skal kopieres med over.

Kan det monstro overhovedet lade sig gøre?
Avatar billede kim1a Ekspert
27. december 2014 - 09:10 #1
Hvad med at lave en ekstra kolonne som blot er en hvis sætning der dækker dit datointerval?

Altså Hvis større end startdato og mindre end slutdato, så X og ellers "" (tom)

Så skal du blot kopiere de linjer med X i kolonnen. Det kan både et filter eller en simpel VBA klare.
Avatar billede alphabits Nybegynder
27. december 2014 - 10:21 #2
Du kan bruge et avanceret filter, men det er lidt bøvlet. Istedet for at jeg prøver at forklare det, er det nemmere hvis du ser videoen her: http://www.contextures.com/xladvfilter01.html#videodiffsheet
Avatar billede KurtOA Praktikant
27. december 2014 - 12:19 #3
Hvis du er interesseret i at løse det med VBA kan det sagtens lade sig gøre...? men der er jo ingen grund til at bruge "krudt" på en kode hvis det ikke er det du søger? mvh Kurt
Avatar billede KurtOA Praktikant
28. december 2014 - 10:50 #4
Som vba kan det evt laves med en kode i stil med nedenstående:
Den køres fra det originale ark med data, og opretter et nyt ark.
Til det nye ark kopieres række for række dine data i datointervallet (der kan indstilles vha variablerne "startdato" & "slutdato" ). Koden starter i række 4 og kopierer dine data til det nye ark til der ikke er flere data der overholder dine datokrav.
OBS!!! Brug den kun på en KOPI af din Excelfil
- den er kun en lille demo af hvad der kan lade sig gøre.
Kolonneoverskrifterne kan selvfølgelig også kopieres med over - ligesom cellerne i det nye ark evt kan formateres.

Sub opretKopiUdvalgteData()

Dim startdato, slutdato As Date
Dim i, x As Long
Dim wsKopi, wsOriginal As Worksheet

startdato = DateValue("1/1/2014")
slutdato = DateValue("31/3/2014")

Set wsOriginal = ActiveSheet

Sheets.Add After:=Sheets(wsOriginal.Name)
Set wsKopi = ActiveSheet

wsOriginal.Select

Range("A4").Select
i = ActiveCell.Row

Do Until ActiveCell = ""

    If ActiveCell >= startdato And ActiveCell <= slutdato Then
    For x = 0 To 8
    wsKopi.Cells(i, x + 1) = ActiveCell.Offset(0, x)
    wsKopi.Cells(i, 1).NumberFormat = "m/d/yyyy"
    Next x
   
    i = i + 1
    End If

ActiveCell.Offset(1, 0).Select
Loop

Range("A4").Select
wsKopi.Select
Range("a1") = "datakopi opdateret d.: " & Now

End Sub
Avatar billede 2hans Juniormester
28. december 2014 - 12:22 #5
Puha, den var værre, for det er jo faktisk alle tre rigtigt gode løsningsforslag, og mange tak til jer alle tre. Jeg vælger at prøve at arbejde videre med Kurts forslag til vba løsning, så kurt, hvis du smider et svar, så får du lige point.
Avatar billede KurtOA Praktikant
28. december 2014 - 13:16 #6
Hvis der er noget yderligere du vil have hjælp til - så sig til eller skriv evt direkte. Jeg hjælper gerne "helt på plads" ;-)
Mit forslag til kode er jo ikke specielt elegant eller fintunet .....

Et andet forslag til løsning kunne vha VBA være at lade en kode kopiere HELE dit dataark - og så istedet fjerne de rækker som ikke overholder dine kriterier ;-) Så ville du jo nemt bevare overskrifter og formatering.

Vi kan jo lige vente med at lukke den til du er "kommet i mål".

mvh Kurt
Avatar billede xl-Enthusiast Ekspert
28. december 2014 - 13:30 #7
Hvis problemet er løst, så glem mit indlæg.

Skulle du imidlertid være interesseret i en en ren formelløsning uden almindelig eller avanceret filtrering, så sig til.
Avatar billede 2hans Juniormester
28. december 2014 - 16:05 #8
Hej xl-Entusiast, jeg løber lige lidt til og fra i disse dage :) En ren formelløsning lyder meget interessant, kan det lade sig gøre?
Avatar billede xl-Enthusiast Ekspert
28. december 2014 - 16:32 #9
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