Avatar billede trajkovski Nybegynder
20. juli 2009 - 12:12 Der er 4 kommentarer

Loops i VBA

Hej


Jeg har et loop der ser således ud:
Do
    Sheets("Forhandlingsenhed U+H sorteret").Activate
    range("J" & start_celle_forhandling).Activate

    ActiveCell.offset(1, 0).Select

    start_celle_loensam = start_celle_loensam + 1
    start_celle_forhandling = start_celle_forhandling + 1


Loop Until IsEmpty(ActiveCell.offset(1, 0))

Men jeg har det problem, at jeg ikke kan få den til at lave kørslen for den sidste celle - den stopper ved den næstsidste.

Hvad gør jeg forkert?
Avatar billede Slettet bruger
20. juli 2009 - 12:29 #1
Nu kender jeg ikke rigtig noget til vba, men er det ikke muligt at udskifte:
Loop Until IsEmpty(ActiveCell.offset(1, 0))

Med noget ala:
Loop While Not ActiveCell.offset(1, 0) EOF
Avatar billede Slettet bruger
20. juli 2009 - 12:48 #2
Nu har jeg leget en smule med loop, efter inspirationer fra personer her på side der er meget bedre
end mig, men jeg vil mene at du skal prøve noget i denne retning

Loop Until IsEmpty(ActiveCell) eller Loop until ActiveCell = 0

Du skal regne med at når du når til den sidste celle der skal beregnes, har du samtidig bedt den om at stoppe når cellen efter den der skal beregnes er tom, derfor beregnes cellen ikke.
Avatar billede trajkovski Nybegynder
20. juli 2009 - 13:23 #3
Tak for jeres hurtige svar.


Nu har jeg prøvet at udskfite "Do" ud med "Do While Not IsEmpty(ActiveCell.offset(1, 0))" og "Do While Not IsEmpty(ActiveCell)". Stadig uden held. Jeg har også prøvet "Loop Until IsEmpty(ActiveCell)", men det hjalp heller ikke.

Jeg kan se, at den vælger den sidste celle, men den udfører ikke loopet for den sidste celle. Den vælger bare den sidste celle med indhold, og så stopper loopet.
Avatar billede Slettet bruger
20. juli 2009 - 13:35 #4
Har du prøvet: Loop until ActiveCell = 0 eller Loop until ActiveCell = ""
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
Kurser inden for grundlæggende programmering

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