Microsoft Excel er især glad for sammenhængende intervaller. Når en serie er brudt op af tomme celler , Excel tilføjer et lag af problemer med at dine regneark opgaver. Undertiden er løsningen at udfylde de tomme felter , kopiering rækker, der indeholder data og indsætte værdierne ind i de tomme rækker nedenunder. Hvis du arbejder med et stort regneark , har du sandsynligvis ikke ønsker at gøre dette ved hånden. Brug i stedet en Visual Basic for Applications ( VBA ) makro til at finde de tilgængelige rækker og pasta i data automatisk. Instruktioner
1
Open "Microsoft Excel " udgave 2002 eller senere .
2
Opret et regneark til at teste din makro . Medtag rækker med data og rækker , der er blank. Indtast følgende : Hej
Cell B1: test1
Cell C1: test1
Cell A4: test2
Cell B4: test2
Cell C4: test2
Cell D4 : test2
Cell A5: test3
Cell B5: test3
Cell C5: test3
Cell A9: test4
3
Tryk på " Alt + F11 " for at åbne Visual Basic Editor
4
Indsæt en tom modul til at holde din VBA-kode. . Vælg "Indsæt " og derefter " Modul " fra menuen .
5.
Start en ny subrutine kaldet " PasteAvail ". Indtast følgende i koden modul: " . Enter "
Sub PasteAvail ()
Press Excel vil tilføje et " End Sub " erklæring .
6
erklære variabler, du vil bruge. Skrive følgende mellem "Sub " og " End Sub " udsagn :
Dim MaxRows As Long , LastRow Som længe, jeg så længe
Dim MaxCols As Integer , FirstRow As Integer
7
Tildel variabler til at holde det samlede antal rækker og kolonner i regnearket. Den faktiske værdi af disse variabler vil afhænge af, hvilken version af Excel du bruger. Indtast følgende:
MaxRows = Rækker
MaxCols = Columns.Count
8
Tildel variabler til at holde rækkenumre for de første og sidste rækker , der indeholder data . Derved undgår en langvarig sløjfe gennem hver række i regnearket. Indtast følgende: . .
FirstRow = 1
LastRow = Cells ( MaxRows , 1 ) End ( xlUp ) Række
9
Tilføj kode til at se på hver enkelt række, fra først til sidst , afgøre, om rækken er tom, og kopier eller indsæt efter behov. Indtast følgende: .
For i = FirstRow Til LastRow
Rækker ( i) Vælg
p Hvis WorksheetFunction.CountBlank ( Rows ( i)) = MaxCols Så
ActiveSheet.Paste
Else
Selection.Copy
End If
Næste jeg
10
Forlad " End Sub " erklæring på plads.
11
Udfør makroen . Vælg "Kør " og derefter " Run Sub /UserForm " fra menuen .
12
Tryk på " Alt + F11 " for at vende tilbage til Excel-regnearket og se resultaterne .
< br >