Avatar billede cljpfa Nybegynder
06. januar 2009 - 16:32 Der er 5 kommentarer

Løkke ud fra datoværdier

Jeg har an masse registreringer på datoer, hvor jeg skal kunne trække data på et års registreringer over i et nyt ark og slette dem i den gamle fane. Jeg har derfor brug for at lave en løkke, hvor man skal fortsætte løkken, indtil datoværdien i en række bliver lig med eller større end 01-01-20xx (nye år).

I A-kolonnen står altså eks.

A2 =01-06-2008
A3 =02-06-2008
A4 =04-06-2008
-
A100 =30-12-2008 (Herefter skal løkken stoppe!!!)
A101 =03-01-2009

Her skal der altså kopieres data fra række 2 til og med række 100 over i fane "Ark3"

VBAkode indtil videre =

Sub OverforData()

Dim irow As Integer
Dim icountrows As Integer
Dim sEndDate As String
Dim iEndDate As Integer
Dim sBeginDate As String
Dim iBeginDate As Integer
Dim sStartcell As String


Range("J2").Select
ActiveCell.FormulaR1C1 = "=YEAR(RC[-9])"
sEndDate = "01-01-" & ActiveSheet.Cells(2, 10).Text + 1
sBeginDate = "01-01-" & ActiveSheet.Cells(2, 10).Text

irow = 2
sStartcell = ActiveSheet.Cells(irow, 1).Text

Do Until sStartcell > sEndDate
    irow = irow + 1
    sStartcell = ActiveSheet.Cells(irow, 1).Text
Loop

Range("A2;G & irow").Select
Selection.Copy
Sheets("Ark3").Select
Range("a2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Range("H2").Select
End Sub
Avatar billede oleelo Nybegynder
06. januar 2009 - 17:33 #1
Hej
Ret linjen 'Range("A2;G & irow").Select
til
Range(Cells(2, 1), Cells(irow, 7)).Select

mvh oleelo
Avatar billede excelent Ekspert
06. januar 2009 - 18:00 #2
Denne kopierer fra Ark1 til Ark3 - skal området blot tømmes i Ark1
eller skal rækkerne slettes ?

Sub SletDato()
Dim fra, til, f, t
Set sh1 = Sheets("Ark1")
Set sh3 = Sheets("Ark3")
fra = Cells(2, 10)
til = Cells(2, 10) + 1

f = sh1.Range("A1:A10000").Find(fra, LookIn:=xlValues, lookat:=xlPart).Row
t = sh1.Range("A1:A10000").Find(til, LookIn:=xlValues, lookat:=xlPart).Row - 1
sh1.Range("A" & f & ":G" & t).Copy sh3.Range("A1")

End Sub
Avatar billede excelent Ekspert
08. januar 2009 - 16:42 #3
?
Avatar billede cljpfa Nybegynder
12. januar 2009 - 10:57 #4
Jeg får error på sh1?
Avatar billede excelent Ekspert
12. januar 2009 - 15:30 #5
Hvis arket du kopierer fra ikke hedder Ark1, så skal du rette
Ark1 i denne linie :Set sh1 = Sheets("Ark1")
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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