Denne artikel vil vise, hvordan du bruger VBA til at kopiere en række celler til et andet ark eller en projektmappe.
For mere information, læs vores VBA -vejledning til kopiering og indsætning.
Kopiér til eksisterende ark
For at kopiere en række celler fra et ark til et andet ark, der allerede findes, kan vi bruge følgende kode:
123456 | Sub CopyAndPasteActiveSheet.Range ("A1: D10"). VælgUdvælgelse. KopiArk ("Ark2"). VælgActiveSheet.IndsætAfslut Sub |
Dette kopierer de oplysninger, der er gemt i det aktive arkområde A1: D10, og indsætter dem i et eksisterende ark2. Da vi ikke har angivet det område, der skal vælges i ark 2, indsætter det det automatisk i område ("A1"). Det vil også indsætte enhver formatering i Sheet 2, der var i området i Sheet 1.
Hvis vi ønsker at indsætte det på et andet sted i Sheet 2, kan vi vælge startcellen eller intervallet, vi vil indsætte i. Koden herunder vil indsætte oplysningerne, der starter i celle E2.
1234567 | Sub CopyAndPasteToRangeActiveSheet.Range ("A1: D10"). VælgUdvælgelse. KopiArk ("Ark2"). VælgOmråde ("E1"). VælgActiveSheet.IndsætAfslut Sub |
For bare at indsætte værdierne i Sheet 2 og ikke inkludere formateringen kan vi bruge følgende kode. Endnu engang behøver vi ikke at angive området til side, hvis vi ønsker at indsætte i celle A1.
123456 | Sub CopyAndPasteValuesActiveSheet.Range ("A1: D10"). VælgUdvælgelse. KopiArk ("Ark2"). VælgSelection.PasteSpecial Paste: = xlPasteValuesAfslut Sub |
Kopiér til nyt ark
For at kopiere og derefter indsætte i et nyt ark kan vi bruge følgende kode:
123456 | Sub CopyAndPasteNewSheetActiveSheet.Range ("A1: D10"). VælgUdvælgelse. KopiArk. Tilføj efter: = ActiveSheetActiveSheet.IndsætAfslut Sub |
For bare at kopiere værdier kan vi igen bruge xlPasteValues.
Kopiér til eksisterende arbejdsbog
For helt at kopiere og indsætte i en anden projektmappe kan vi enten have begge projektmapper allerede åbne, eller vi kan bruge koden til at åbne en anden projektmappe og derefter indsætte den i projektmappen.
Denne kode nedenfor kopieres til en eksisterende projektmappe, der allerede er åben.
1234567 | Sub CopyAndPasteExistinging BookOmråde ("A1: D10"). VælgUdvælgelse. KopiWindows ("CombinedBranches.xlsx"). AktiverArk. Tilføj efter: = ActiveSheetActiveSheet.IndsætAfslut Sub |
VBA -programmering | Kodegenerator virker for dig!
Denne kode nedenfor vil kopiere og indsætte i et nyt ark i en 2. projektmappe, der åbnes med koden.
1234567 | Sub CopyAndPasteOpenWorkbookOmråde ("A1: D9"). VælgUdvælgelse. KopiWorkbooks.Open Filename: = "C: \ ExcelFiles \ CombinedBranches.xlsx"Ark. Tilføj efter: = ActiveSheetActiveSheet.IndsætSlutark |
TIP: udskift filnavnet i Workbooks.Open -argumentet med dit eget filnavn!
Kopiér til ny projektmappe
Vi kan også kopiere og indsætte i en ny projektmappe.
123456 | Sub CopyAndPasteNewWorkbookOmråde ("A1: D9"). VælgUdvælgelse. KopiWorkbooks.AddActiveSheet.IndsætAfslut Sub |