Denne vejledning viser dig, hvordan du bruger egenskaben Range.End i VBA.
De fleste ting, du gør manuelt i en Excel -projektmappe eller et regneark, kan automatiseres i VBA -kode.
Hvis du har en række ikke-tomme celler i Excel, og du trykker på Ctrl+pil ned, flytter markøren til den sidste ikke-tomme celle i den kolonne, du befinder dig i. På samme måde, hvis du trykker på Ctl+pil op, flytter markøren til den første ikke-tomme celle. Det samme gælder for en række ved hjælp af Ctrl+højre pil eller Ctrl+venstre pil for at gå til begyndelsen eller slutningen af den række. Alle disse tastekombinationer kan bruges i din VBA -kode ved hjælp af Afslut funktion.
Range End Property Syntax
Range.End -egenskaben giver dig mulighed for at flytte til en bestemt celle i den aktuelle region, som du arbejder med.
udtryk.Ende (Retning)
udtrykket er celleadressen (område) for cellen, hvor du vil starte fra f.eks .: Område ("A1")
END er egenskaben for det Range -objekt, der kontrolleres.
Retning er Excel -konstanten, som du kan bruge. Der er 4 valgmuligheder - xlDown, xlToLeft, xlToRight og xlUp.
Flytter til den sidste celle
Proceduren herunder vil flytte dig til den sidste celle i den aktuelle region af celler, du er i.
1234 | Sub GoToLast ()'flytte til den sidste celle, der er optaget i det aktuelle område af cellerOmråde ("A1"). Afslut (xlDown) .VælgAfslut Sub |
Tæller rækker
Følgende procedure giver dig mulighed for at bruge xlDown konstant med egenskaben Range End for at tælle, hvor mange rækker der er i din nuværende region.
12345678 | Sub GoToLastRowofRange ()Dim rw Som heltalOmråde ("A1"). Vælg'få den sidste række i den aktuelle regionrw = Område ("A1"). Afslut (xlDown) .Række'vise hvor mange rækker der brugesMsgBox "Den sidste række, der blev brugt i dette område, er" & rwAfslut Sub |
Mens den nedenfor vil tælle kolonnerne i intervallet ved hjælp af xlToRight konstant.
12345678 | Sub GoToLastCellofRange ()Dim col As IntegerOmråde ("A1"). Vælg'få den sidste kolonne i den aktuelle regioncol = Range ("A1"). Slut (xlToRight) .Column'vise, hvor mange kolonner der brugesMsgBox "Den sidste kolonne, der blev brugt i dette område, er" & kolAfslut Sub |
Oprettelse af en rækkefølge
Fremgangsmåden herunder giver os mulighed for at starte ved den første celle i et cellecelle og derefter bruge egenskaben End (xlDown) til at finde den sidste celle i cellens område. Vi kan derefter ReDim vores array med de samlede rækker i området, hvorved vi kan sløjfe gennem cellens område.
123456789101112131415161718 | Sub PopulateArray ()'erklærer arrayetDim strSuppliers () As String'erklær heltalet for at tælle rækkerDim n Som heltal'tæl rækkernen = Range ("B1", Range ("B1"). End (xlDown)). Rækker.Tælling'initialiser og udfyld matrixenReDim strCustomers (n)'erklærer heltalet for loopingDim i As Integer'udfyld matrixenFor i = 0 Til nstrCustomers (i) = Range ("B1"). Offset (i, 0) .VærdiNæste i'vis meddelelsesboks med værdier af arrayMsgBox Join (strCustomers, vbCrLf)Afslut Sub |
Når vi kører denne procedure, returnerer den følgende meddelelsesboks.