Avatar billede kll1978 Nybegynder
17. april 2010 - 01:49 Der er 1 kommentar og
1 løsning

Gentage kode, Excel, vba

Jeg har lavet denne lille stykke kode, som går ud på, at den skal gentage en stykke kode til og med det antal rækker der i en anden arkfane. Men den virker desværre ikke. Håber nogen der kan hjælpe.

Sub kopierOmraade()

Dim maxRow As Integer
Dim tempRng As Range

maxRow = Worksheets("Ark2").Range("B2").Rows.Count
Set tempRng = Worksheets("Ark2").Range("B1:D1")

For i = 2 To maxRow
    Worksheets("Ark2").Range(Cells(i, 2), Cells(i, 4)).Copy tempRng
    Worksheets("Ark1").Range("A6").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
   
Next i

MsgBox ("Opgaven er fuldført")
 
End Sub
17. april 2010 - 07:39 #1
Hvad skal den gøre... der er flere "fejl"..

maxRow = Worksheets("Ark2").Range("B2").Rows.Count
Returnerer kun 1, da antallet af rows for range B2 er 1 - nemlig række 2... Når du så kører Fori = 2 to 1, så skal den jo ikke køre...
Du er nødt til udvide dit område... f.eks.
maxRow = Worksheets("Ark2").Range("B2:B50").Rows.Count
maxRow = Worksheets("Ark2").Range("B2").End(xlDown).Rows.Count
men jeg ved jo ikke hvad den skal...


Når du kopierer skifter du fint område
    Worksheets("Ark2").Range(Cells(i, 2), Cells(i, 4)).Copy tempRng

MEEEEN når du sætter det ind igen er det altid i A6... altså vil A6 blier overskrevet hele tiden - er det meningen?
    Worksheets("Ark1").Range("A6").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Avatar billede kll1978 Nybegynder
15. oktober 2012 - 11:43 #2
Har selv fundet løsningen. Tak for input.
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