Hvordan Grev jeg ikke de rader i et Excel-regneark ved hjelp av en VBA makro?

Hvordan Grev jeg ikke de rader i et Excel-regneark ved hjelp av en VBA makro?


Ved hjelp av makroer kan fremskynde handlinger i Excel som må gjøres gang på gang ved å automatisere dem. Makroer kan også anvendes for å samle data som kan være nødvendig for ytterligere programmering. For eksempel, kan det være nødvendig antall celler eller rader i en tabell for å sikre at automatiserte datamanipulasjon fungere som forutsatt. For å demonstrere, kan en enkel makro telle antall rader i et regneark og åpne en meldingsboks som sier at antall.

Bruksanvisning

1 Åpne en ny Excel-regneark og fylle ut de første cellene i kolonne B med tilfeldige ord, bokstaver eller tall.

2 Klikk på "Utvikler" fanen på Excel-menyen bånd. Hvis du ikke kan se "Utvikler" fanen på menyen båndet, klikker du på Microsoft Office-ikonet øverst til venstre i vinduet, klikk på "Alternativer for Excel" -knappen, og klikk på kryss der det står "Vis Utvikler Tab i båndet. "

3 Start Visual Basic Editor ved å klikke på Visual Basic-ikonet eller trykke Alt og F11 samtidig.

4 Klikk på "Sett inn" på Visual Basic Editor-menyen og velg "Module".

5 Skriv inn følgende i modulboksen:

Sub CountNumberofRowsinColumnB ()

NonBlankRange ("Sheet1!B:B")

End Sub

Sub NonBlankRange (srange As String)

Dim countNonBlank As Integer, myRange As Range

Sett myRange = Range (srange)

countNonBlank = Application.WorksheetFunction.CountA (myRange)

MsgBox "Antall rader:" & amp; countNonBlank,, srange

End Sub

Denne koden ble tilpasset fra et prosjekt i "Microsoft Visual Basic .Net Step by Step" sitert nedenfor.

6 Klikk på Excel-ikonet på Visual Basic Editor for å vise Excel-regneark.

7 Klikk på Macro-ikonet på Excel bånd og velg "CountNumberofRowsinColumnB" fra makronavn.

8 Klikk "Kjør" i makroboksen. En meldingsboks vil åpnes som forteller deg hvor mange rader er fylt ut.

Hint

  • En annen måte å telle rader er å bruke "Greven" -funksjonen. Microsoft gir følgende kodebiten i Excel 2003 VBA Språk Reference sitert nedenfor. For å bruke Count-funksjonen:
  • Sub DisplayRowCount ()
  • Dim iAreaCount As Integer
  • Dim i As Integer
  • Regneark ( "Ark1"). Aktiver
  • iAreaCount = Selection.Areas.Count
  • Hvis iAreaCount <= 1 Deretter
  • MsgBox "Utvalget inneholder" & Selection.Rows.Count og "rader".
  • Ellers
  • For i = 1 Til iAreaCount
  • MsgBox "Area" og jeg & "av utvalget inneholder" & _
  • Selection.Areas (i) .Rows.Count og "p".
  • Neste jeg
  • Slutt om
  • End Sub
  • Dette må ha området skal telles velges før makro er drevet, slik at hvis bare en celle er valgt svar den gir vil være "1", og hvis hele arket er valgt, det vil vise «1048576» (i Excel 2007) .
  • Bruk makroer i testforhold først, ved å bruke kopier av regneark til å teste makroer på, for å spare miste viktige data.