Excel VBA Kopier rekkevidde til et annet ark (8 enkleste måter)

  • Dele Denne
Hugh West

Når du trenger det, kan du kopiere et område fra ett ark til et annet ark eller arbeidsbok. Det finnes ulike typer kopiering og innliming. Etter denne artikkelen vil du bli kjent med forskjellige måter å bruke Excel VBA-kopieringsområdet til et annet ark.

For å gjøre forklaringen levende, skal jeg bruke et eksempeldatasett som representerer personopplysningene til bestemte personer . Datasettet har 4 kolonner. Disse kolonnene er Fornavn, Etternavn, Fullt navn, og E-post .

Last ned arbeidsbok for å øve

VBA kopiere område til et annet ark.xlsm

8 måter å Excel VBA kopiere område til et annet ark

1. Kopier et område til et annet ark med format

Når du vil kopiere et område fra ett ark til et annet ark med Format , kan du ganske enkelt gjøre det ved å bruke VBA .

Her skal jeg kopiere et område fra Datasett ark til WithFormat ark.

La oss starte prosedyren,

Åpne først Utvikler fanen >> velg Visual Basic

Du kan også bruke ALT + F11 tastaturet for å åpne VBA editor.

Deretter åpnes et nytt vindu med navnet Microsoft Visual Basic for Applications.

Derfra åpner du Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Copy_Range_BelowLastCell_AnotherSheets og velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Derfor vil den kopiere det valgte området og lime inn det fra den siste raden i et annet ark .

8. VBA kopiere et område til siste rad i en annen arbeidsbok

Hvis du vil kopiere et område til den siste raden i et annet arbeidsbokark kan du også bruke VBA .

Her skal jeg kopiere et område fra Datasett2 ark til Ark1 av Bok2 men fra den første ikke-blanke cellen.

For å starte prosedyren,

Åpne først kategorien Utvikler >> velg Visual Basic

Du kan også bruke ALT + F11 tastaturet for å åpne VBA redigeringsprogrammet.

Deretter åpnes et nytt vindu i Microsoft Visual Basic for Applications.

Derfra åpner du Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

5366

Her erklærte jeg Underprosedyren Copy_Range_BelowLastCell_To_Another_Workbook der wsCopy og wsDestination er Arbeidsark type, lCopyLastRow og lDestLastRow er Lang type.

Først brukes Sett for å angi variabler for arket som skal kopieres og målarket.

Neste, brukte Rad -metoden for å finne den siste raden basert på data fra kolonne A i kopiområdet.

Igjen, brukte Rad -metoden for å finne den første tomme raden basert på data i kolonne A i destinasjonsområdet, brukes også Offset for å flytte ned én egenskap.

Til slutt, Kopiert dataene til Dataset2 arket fra Excel VBA Kopier område til et annet ark.xlsm arbeidsbok til destinasjonen Ark1 i arbeidsboken Bok2.xlsx .

Nå, Lagre koden og gå tilbake til regnearket.

Deretter åpner du Vis -fanen >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Copy_Range_BelowLastCell_To_Another_Workbook velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Derfor vil den kopiere det valgte området fra det eksisterende arket til den siste raden i en annen arbeidsbok.

Øvingsseksjon

Jeg har gitt et øvelsesark i arbeidsboken for å øve på disse forklarte måtene for Excel VBA kopiområde til et annet ark.

Konklusjon

I denne artikkelen har jeg forklart 8 forskjellige typer enkle og raske måter åExcel VBA kopierer området til et annet ark. Disse forskjellige måtene vil hjelpe deg å kopiere et område fra ett ark til et annet og også fra ett ark til en annen arbeidsbok. Sist men ikke minst, hvis du har noen form for forslag, ideer og tilbakemeldinger, kan du gjerne kommentere nedenfor.

Modul.
6386

Her erklærte jeg Underprosedyren Copy_Range_withFormat_ToAnother_Sheet

Jeg har brukt området B1:E10 for å kopiere fra det eksisterende arket til arknavnet WithFormat .

Her brukte jeg Kopier metode for å kopiere det valgte området, Kopier metoden kopierer et hvilket som helst område med Format .

Til slutt Lagre koden og gå tilbake til regnearket .

Deretter åpner du Vis -fanen >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Kopier_område_med Format_TilAnother_Sheet velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Derfor vil den kopiere det valgte området med Format til det nye arket jeg har valgt ( WithFormat) .

2. VBA Kopier et område til et annet ark uten format

Det er også mulig å kopiere et område til et annet ark uten Format ved å bruke VBA .

Her skal jeg kopiere et område fra Datasett ark til WithoutFormat ark.

La oss begynne prosedyren,

Åpne nå Utvikler fanen >> velg Visual Basic ( bruk ALT + F11)

Deretter åpnes den Microsoft Visual Basic for Applications.

Åpne deretter Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

7640

Her erklærte jeg Underprosedyren Kopier_område_uten format_til annet ark

Jeg har tatt rekkevidde B1:E10 for å kopiere fra det eksisterende arket til arknavnet UtenFormat .

Her brukte jeg metoden Kopier for å kopiere det valgte området, men også nevnte Lim inn:=xlPasteValues ​​ i PasteSpecial metoden slik at den bare limer inn Verdier for det valgte området, ikke formatet.

Til slutt , Lagre koden og gå tilbake til regnearket.

Deretter åpner du fanen Vis >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Copy_Range_WithoutFormat_Toanother_Sheet og velg også arbeidsboken i Makroer i .

Til slutt, Kjør den valgte Makroen .

Dermed vil den Kopiere det valgte området kun med Verdier ingen Format .

3. Kopier et område til et annet ark med format og kolonnebredde

Noen ganger vil du kanskje Kopier et hvilket som helst valgt område som det er, for det kan du Kopiere et område med Format og Kolonnebredde .

Her, Jeg skal kopiere et område fra Datasett ark til Format & Kolonnebredde ark.

For å se prosedyren for å utføre oppgaven ved å bruke VBA ,

Åpne først fanen Utvikler >> velg Visual Basic

Du kan også bruke ALT + F11 tastaturet for å åpne VBA redigeringsprogrammet.

Deretter åpnes et nytt vindu i Microsoft Visual Basic for Applications.

Der åpner du Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

7574

Her erklærte jeg Underprosedyren Kopier_område_til_et_annet_ark_med_formatOgKolumnbredde

Jeg har tatt rekkevidde B1:E10 for å kopiere fra det eksisterende arket til målarketnavnet Formater & Kolonnebredde .

Her brukte jeg Kopier -metoden for å kopiere det valgte området. Jeg brukte også PasteSpecial -metoden der jeg nevnte Paste:=xlPasteColumnWidths slik at den limer inn det valgte området sammen med Format og ColumnWidths .

Til slutt Lagre koden og gå tilbake til regnearket.

Deretter åpner du fanen Vis >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Kopier_område_til_et_annet_ark_med_FormatAndKolumnbredde og velg også arbeidsboken i Makroer i .

Til slutt, Kjør det valgte Makro .

Som et resultat vil den kopiere det valgte området med Format og Kolonnebredde .

4. VBA Kopier et område til et annet ark med formel

Hvis du har en formel i datasettet du vil kopiere. Ingen bekymringer! Du kan kopiere området som inneholder Formel til et annet ark og beholde formelen intakt.

Her skal jeg kopiere et område fra Datasett ark til WithFormula ark

La oss begynne prosedyren,

Til å begynne med åpner du Utvikler fanen >> velg Visual Basic ( du kan også bruke ALT + F11 tastaturet)

Deretter vil åpne Microsoft Visual Basic for Applications.

Derfra åpner du Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

4964

Her erklærte jeg Underprosedyren Kopier_område_med formel_til et annet ark

Jeg har tatt rekkevidde B1:E10 for å kopiere fra det eksisterende arket til destinasjonsarketnavnet WithFormula .

Her brukte jeg Kopier -metoden for å kopiere det valgte området. Jeg brukte også PasteSpecial -metoden der jeg nevnte Paste:=xlPasteFormulas slik at den bærer formlene sammen med det valgte området.

Til slutt , Lagre koden og gå tilbake til regnearket.

Åpne deretter Visning fanen >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Kopier_område_medFormula_TilAnother_Sheet velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Dermed vil den kopiere alle de valgte celleområdene med formler .

Lignende avlesninger:

  • Hvordan bruke VBA Range Offset (11 måter)
  • VBA for hver celle i området i Excel (3 metoder)
  • Hvordan bruke områdeobjektet til VBA i Excel (5 egenskaper)

5. Kopier et område med Autotilpasning til et annet ark

Mens kopierer et område til et annet ark, kan du også bruke Autotilpass -metoden i VBA til Autotilpass det kopierte området i det nye arket.

Her skal jeg kopiere et område fra Datasett ark til Autotilpass ark

La oss starte prosedyren,

Åpne først Utvikler fanen >> velg Visual Basic

Du kan også bruke ALT + F11 tastaturet for å åpne VBA redigeringsprogrammet.

Deretter åpnes et vindu med Microsoft Visual Basic for Applications.

Åpne deretter Sett inn > ;> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

5371

Her erklærte jeg Subprosedyren Copy_Range_withFormat_AutoFit

Først valgte jeg regnearket Datasett . Deretter tok området B1:E10 for å kopiere fra det eksisterende arket til målarket kalt Autotilpass .

Her brukte jeg Kopier metoden for å kopiere det valgte området og AutoFit -metoden vil autotilpasse de gitte kolonnene B:E .

Til slutt Lagre koden og gå tilbake til regnearket.

Deretter åpner du fanen Vis >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Copy_Range_withFormat_AutoFit velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Derfor vil den kopiere det valgte området til et nytt ark og også Autotilpasse kolonnene.

6. VBA Kopier et område til en annen arbeidsbok

Hvis du vil kan du også Kopiere et område fra ett ark til et annet ark av en annen arbeidsbok.

Her skal jeg kopiere et område fra Datasett ark til Ark1 av Bok1 arbeidsbok.

La oss starte prosedyren,

Åpne først Utvikler fanen >> velg Visual Basic (y du kan også bruke ALT + F11 tastaturet)

Deretter, den vil åpne Microsoft VisualGrunnleggende for applikasjoner.

Deretter åpner du Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

6400

Her erklærte jeg Subprosedyren Copy_Range_WithFormat_Toanother_WorkBook

Jeg har tatt området B3:E10 fra arknavn Datasett for å kopiere fra det eksisterende arket til det nye arbeidsboknavnet Bok1 og arknavn Ark1 .

Her brukte jeg metoden Kopier for å kopiere det valgte området til den nye arbeidsboken.

Til slutt Lagre koden og gå tilbake til regnearket.

Deretter åpner du Vis -fanen >> fra Makroer >> velg Vis makroer

➤ En dialogboks dukker opp.

Nå, fra Makronavnet velg Copy_Range_WithFormat_Toanother_WorkBook og velg også arbeidsboken i Makroer i .

Til slutt Kjør den valgte makroen .

Nå vil den kopiere det valgte området fra arket Datasett til en annen arbeidsbok.

7. Kopier et område til den siste raden i et annet ark

I alle fall, hvis du vil kopiere et område til et annet ark fra en bestemt celle eller den siste cellen kan du gjøre det ved å bruke VBA .

Før jeg går inn i prosedyren, vil jeg fortelle deg at jeg har tatt to nye ark bestående av Fullt navn, e-post, og Adresse .

La oss først se på Datasett2 arket.

Her er arket Under siste celle .

Her skal jeg kopiere et område fra Datasett2 ark til Under siste celle men fra den første ikke-tomme cellen.

Til å begynne med, åpne Utvikler fanen >> velg Visual Basic

Deretter åpnes Microsoft Visual Basic for Applications.

Åpne deretter Sett inn >> velg Modul .

En Modul åpnes og skriv inn følgende kode i den åpnede Modul .

3208

Her erklærte jeg Underprosedyren Copy_Range_BelowLastCell_AnotherSheets

Først valgte jeg arket Datasett2 og brukte deretter Rad -metoden for å telle Siste rad og beholdt den tellede raden i lr .

Deretter tatt området A2:C & lr for å kopiere fra det eksisterende arket til målarketnavnet Under siste celle .

Igjen, brukte Rad metoden for å telle Siste Rad av et annet ark kalt Under siste celle og beholdt den opptalte raden i lrAnotherSheet .

Her brukte jeg Kopier -metoden for å kopiere det valgte området og AutoFit -metoden vil autotilpasse de gitte kolonnene A:C .

Til slutt Lagre koden og gå tilbake til regnearket.

Deretter åpner du Vis -fanen >> fra makroer

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.