Kopier det nåværende Excel -celleområdet til en ny tabell ved hjelp av VBA -makroen

Innholdsfortegnelse

For å fullstendig overføre dataene fra det nåværende celleområdet til en ny tabell, må du vite hvor stort celleområdet som brukes rundt den aktive cellen. Eller du kan la Excel gjøre dette for deg og kopiere g

Vil du automatisk kopiere alle cellene fra et sammenhengende celleområde i en makro? Dette er spesielt nyttig hvis du vil reagere fleksibelt på innspill fra brukere og ikke vet hvor store dataområder som er angitt.

Du kan bruke en makro for å gjøre denne jobben. Makroen bestemmer alle cellene rundt den aktive cellen og kopierer nøyaktig disse cellene til en ny arbeidsbok.

Figuren nedenfor viser en tabell med tre forskjellige dataområder. De er fargekodet for å gjøre dem lettere å se.

Alle celler som kobles til naboceller uten tomme celler, anses å tilhøre sammen.

Med en passende makro kan du sikre at etter at du har klikket på en celle i et celleområde, blir alle cellene som tilhører den kopiert til en ny tabell. Her er den riktige programkoden:

Gjeldende område for underkopi ()
Dim kildeareal som område
Dim NewSheet Som regneark
Angi kildeområde = ActiveCell.CurrentRegion
Sett NeuesBlatt = Workbooks.Add.Worksheets (1)
Kildeområde.Kopier destinasjon: = NeuesBlatt.Range ("A1")
Slutt Sub

Klikk en hvilken som helst celle i en tabell før du ringer makroen. Makroen bestemmer alle celler som sammen med den valgte cellen tilhører et område og kopierer dette dataområdet til en ny, tom arbeidsbok. Figuren nedenfor viser hvordan resultatet ser ut etter å ha ringt makroen hvis celle E9 i tabellen fra den første figuren er valgt før makroen starter.

For å gå inn i makroen, trykk ALT F11 i Excel for å åpne VBA -editoren. Velg kommandoen INSERT - MODULE i VBA -editoren og angi makroen. For å starte makroen, aktiver tastekombinasjonen ALT F8 i Excel. De to hurtigtastene for å starte VBA -editoren og makroen fungerer i alle versjoner av Excel.

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave