Avatar billede Martin_34_2 Nybegynder
03. august 2015 - 10:01 Der er 1 løsning

Autofill en variable range

Hejsa,
Jeg er i gang med og prøve og lære lidt vba, har ikke rigtig rodet med det før, men har nu et konkret behov jeg ikke kan løse.
Jeg vil gerne lave en autofill funktion der kun udfylder de antal rækker der er data i i en bestemt colonne.

Jeg har lavet understående macro, hvor jeg gerne vil erstatte de faste range referancer til at der i ark et autofilles det antal rækker der er i colonne AB, og i ark 2 det antal rækker der er data i i colonne A.

Jeg tænkte på og bruge en lastrownumber som en løsning, men kan ikke få det til og virke:
LastRowNumber = "A" & WorksheetFunction.CountA(Range("A1:A1000000"))???

Sub Macro1()
'
' Macro1 Macro
'

'
    Sheets("Sheet1").Select
    Selection.AutoFill Destination:=Range("AC2:AC2167")
    Range("AC2:AC2167").Select
    Range("AD2").Select
    Selection.AutoFill Destination:=Range("AD2:AD2167")
    Range("AD2:AD2167").Select
    Columns("G:G").Select
    Selection.Copy
    Sheets("Sheet2").Select
    Range("A1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveSheet.Range("$A$1:$A$2167").RemoveDuplicates Columns:=1, Header:= _
        xlYes
    Range("A2").Select
    Selection.Delete Shift:=xlUp
    Columns("A:A").EntireColumn.AutoFit
    Range("B2").Select
    Selection.AutoFill Destination:=Range("B2:B563")
    Range("B2:B563").Select
    Range("C2").Select
    Selection.AutoFill Destination:=Range("C2:C563")
    Range("C2:C563").Select
    Range("D2").Select
    Selection.AutoFill Destination:=Range("D2:D563")
    Range("D2:D563").Select
    Range("E2").Select
    Selection.AutoFill Destination:=Range("E2:E563")
    Range("E2:E563").Select
    Range("F2").Select
    Selection.AutoFill Destination:=Range("F2:F563")
    Range("F2:F563").Select
    Range("G2").Select
    Selection.AutoFill Destination:=Range("G2:G563")
    Range("G2:G563").Select
    Range("H2").Select
    Selection.AutoFill Destination:=Range("H2:H563")
    Range("H2:H563").Select
    Range("I2").Select
    Selection.AutoFill Destination:=Range("I2:I563")
    Range("I2:I563").Select
    Range("J2").Select
    Selection.AutoFill Destination:=Range("J2:J563")
    Range("J2:J563").Select
    Range("K2").Select
    Selection.AutoFill Destination:=Range("K2:K563")
    Range("K2:K563").Select
    Range("L2").Select
    Selection.AutoFill Destination:=Range("L2:L563")
    Range("L2:L563").Select
    Range("M2").Select
    Selection.AutoFill Destination:=Range("M2:M563")
    Range("M2:M563").Select
    Range("N2").Select
    Selection.AutoFill Destination:=Range("N2:N563")
    Range("N2:N563").Select
    Range("O2").Select
    Selection.AutoFill Destination:=Range("O2:O563")
    Range("O2:O563").Select
    Range("P2").Select
    Selection.AutoFill Destination:=Range("P2:P563")
    Range("P2:P563").Select
    Range("Q2").Select
    Selection.AutoFill Destination:=Range("Q2:Q563")
    Range("Q2:Q563").Select
    Range("R2").Select
    Selection.AutoFill Destination:=Range("R2:R563")
    Range("R2:R563").Select
    Range("S2").Select
    Selection.AutoFill Destination:=Range("S2:S563")
    Range("S2:S563").Select
    Sheets("Sheet3").Select
    Range("A1").Select
End Sub
05. august 2015 - 15:16 #1
Hej
Jeg er ikke helt sikker på hvad du mener, men har du prøvet noget i retning af:
......
.....
Range("B2").Select
Selection.AutoFill Destination:=Range("B2:B"& cstr(lastRowNumber))
hvor cstr ændre tallet lastRowNumber til tekst.
...

Du kan godt autoudfylde flere kolonner på en gang f.eks.:
Range("A2:B2").Select
Selection.AutoFill Destination:=Range("A2:B563")

Med venlig hilsen

Birthe Lauridsen
Praktisk IT
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