27. maj 2007 - 22:31Der er
8 kommentarer og 1 løsning
Data til en bestemt linie, derefter forfra.
Har et program der bla skriver til en ny linie i et ark hver dag, det vil selvfølgelig tage lidt tid inden den løber tør for linier, men aligevel, kan man få programmet til at starte fra linie 2 igen, når den når f.eks linie 100 ? Det optimale ville være at den blot overskriver gamle data, men så kan jeg nok ikke bruge den måde jeg har brugt, da den leder efter næste tomme linie, nogen forslag ?
Jeg har brugt:
Worksheets("Log Page").Activate Range("A2").Select If Range("A2").Value = "" Then Range("A2").Activate
Dim Rw As Long Rw = Range("A65536").End(xlUp).Offset(1, 0).Row If Rw > 100 Then Range("A2").Select Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select Selection.ClearContents Range("A2").Select Else Range("A" & Rw).Select End If
Hej Kabbak Er bange for at data forsvinder for hurtigt, programmet henter data fra sidste linie til en linie på et andet ark, som derefter sender disse til en userform og rapport udskrift, hvis linie 2 til og med 100 slettes når linie 100 oprettes, er der ingen data at hente til userform, kan linie 100 kopieres til linie 2, derefter slette fra og med linie 3 til linie 100 ? der er 16 kolonner med data, (offset 0,1...0,16) Mvh Rigpig
Hej Excelent Tak for bidraget, det ligner det jeg er ude efter, kunne ikke finde det i bøgerne, nu vil jeg jo gerne forstå hvad der sker, ikke bare kopierer, kan du forklare denne linie i din kode: If Cells(65500, 1).End(xlUp).Row > 99 Then Range("A2:O2").Delete Shift:=xlUp Hvad har linie 65500 med det at gøre ? trækker den de 99 linier fra 65500 ? Undskyld de dumme spørgsmål, er ikke nysgerrig, vil bare gerne vide alting ! Mvh Rigpig
If Cells(65500, 1).End(xlUp).Row returnerer sidste ikke tomme celle - tester fra række 65500 og op 65500 rækker nede er måske nok at overdrive en smule, så du kunne sikkert nøjes med Cells(102, 1).End(xlUp).Row eller der omkring 1 tal kunne også være "A" altså Cells(102, "A").End(xlUp).Row hvilket indikerer at det er i kolonne A vi tester.
> 99 Then Range("A2:O2").Delete Shift:=xlUp siger næsten sig selv, hvis ovenstående returnerede værdi er >99 så skal række 2 slettes - ved ikke om kolonne P også skal med !
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.