Great code but wondered how I can paste values rather than just paste?
Thanks :)
Till exempel har du ett stort kalkylblad och nu vill du bara kopiera några utvalda områden och distribuera till andra kalkylblad. Men när du väljer flera intervall och klickar på kopiera kommer det att finnas en dialogruta för att påminna dig "Det kommandot kan inte användas i flera val." I det här tillståndet, hur kopierar du snabbt flera valda områden? Här är några knep för att lösa denna uppgift.
Med hjälp av Urklippkan du klistra in alla valda områden i ett annat intervall eller kalkylblad åt gången. Gör så här:
1. Klicka Hem > i Urklipp grupp för att visa Urklipp Pane.. Se skärmdump:
2. Kopiera sedan de valda intervallen som du behöver en efter en. Samtidigt har de kopierade områdena dykt upp i Urklipp Pane. se skärmdump ovan:
3. Välj den första cellen i destinationsområdet som du klistrar in alla kopierade områden till och klicka Klistra in alla knapp i Urklipp Ruta.
Och sedan har alla kopierade områden klistrats in i det angivna destinationsområdet.
Det kan vara tråkigt att kombinera dussintals ark från olika arbetsböcker till ett ark. Men med Kutools för Excel Kombinera (kalkylblad och arbetsböcker) verktyget kan du få det gjort med bara några klick!
Fullversion gratis provperiod 30 dagar!
Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullversion gratis provperiod 30 dagar, inget kreditkort krävs! Hämta den nu
Med VBA-kod kan du också kopiera flera valda områden och klistra in dem i något annat kalkylblad.
1. Håller ctrl och välj flera icke intilliggande områden som du vill använda.
2. Tryck andra + F11 tangenter samtidigt för att öppna Microsoft Visual Basic för applikationer fönstret klickar Insert > Modulernaoch mata in följande kod i modulen:
Alternativ Explicit Sub CopyMultipleSelection () Dim SelAreas () As Range Dim PasteRange As Range Dim UpperLever As Range Dim NumAreas As Integer, i As Integer Dim TopRow As Long, LeftCol As Integer Dim RowOffset As Long, ColOffset As Integer Dim NonEmptyCellCount As Ingerger 'Exit om ett intervall inte är valt Om TypeName (Selection) <> "Range" Then MsgBox "Välj det intervall som ska kopieras. Ett flerval är tillåtet." Exit Sub End Om 'Lagra områdena som separata Range-objekt NumAreas = Selection.Areas.Count ReDim SelAreas (1 To NumAreas) For i = 1 To NumAreas Set SelAreas (i) = Selection. Area (i) Next' Bestäm övre vänstra cell i flera val TopRow = ActiveSheet.Rows.Count LeftCol = ActiveSheet.Columns.Count For i = 1 To NumAreas If SelAreas (i) .Row <TopRow Then TopRow = SelAreas (i) .Row If SelAreas (i) .Column <LeftCol Then LeftCol = SelAreas (i). Kolumn Nästa uppsättning UpperLeft = Cells (TopRow, LeftCol) 'Hämta klistra adress Vid fel Återuppta nästa uppsättning PasteRange = Application.InputBox _ (Prompt: = "Ange den övre vänstra cellen för pastan range: ", _ Title: =" Copy Mutliple Selection ", _ Type: = 8) On Error GoTo 0 'Exit if cancelled If TypeName (PasteRange) <>" Range "Then Exit Sub' Se till att endast den övre vänstra cellen är används Set PasteRange = PasteRange.Range ("A1") 'Kontrollera klistra intervall för existerande data NonEmptyCellCount = 0 För i = 1 Till NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = Sel Områden (i) .Column - LeftCol NonEmptyCellCount = NonEmptyCellCount + _ Application.CountA (Range (PasteRange.Offset (RowOffset, ColOffset), _ PasteRange.Offset (RowOffset + SelAreas (i) .Rows.Count - 1, _ ColOffset) (i) .Columns.Count - 1))) Nästa i 'Om klistra intervallet inte är tomt, varna användaren Om NonEmptyCellCount <> 0 Då _ Om MsgBox ("Skriv över befintlig data?", vbQuestion + vbYesNo, _ "Kopiera flera val ") <> vbJa Avsluta sedan Sub 'Kopiera och klistra in varje område för i = 1 till NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = SelAreas (i). Kolumn - LeftCol SelAreas (i). Kopiera PasteRange.Offset ( RowOffset, ColOffset) Nästa i End Sub
3. Klicka sedan på run för att köra koden.
4. Och nu vänligen ange en cell för att klistra in intervallen i öppningen Kopiera flera val dialogrutan och klicka på OK knapp. Se skärmdump:
Vårt Kopiera flera områden nytta av Kutools för Excel kan hjälpa dig att enkelt kopiera flera intervall från det aktiva kalkylbladet snabbt. Gör så här:
Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullversion gratis provperiod 30 dagar, inget kreditkort krävs! Hämta den nu
1. Välj de intervall du vill använda en efter en utan att hålla ned ctrl och klicka sedan på Kutools > Kopiera intervall. Se skärmdump:
2. I Kopiera flera områden dialogruta, kontrollera Alla alternativ från Klistra in speciellt avsnittet och klicka på Okej Button. Se skärmdump ovan:
Notera: Om du vill behålla radhöjden och kolumnbredden som originalintervallen, kontrollera Inklusive radhöjd alternativ och Inklusive kolonnbredd alternativ i dialogrutan Kopiera flera områden.
3. Och ange en cell för att klistra in intervallen i följande rutan och klicka på OK knapp.
Och nu klistras alla valda intervall in i den angivna cellen med samma radhöjd och kolumnbredd som de ursprungliga markeringarna.
Klicka här för mer information om Copy Multiple Ranges-verktyget
Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullversion gratis provperiod 30 dagar, inget kreditkort krävs! Hämta den nu
Kutools för Excel ger en annan Kombinera arbetsblad verktyg för att kopiera flera intervall från många kalkylblad eller många arbetsböcker enkelt i Excel. Gör så här:
Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullversion gratis provperiod 30 dagar, inget kreditkort krävs! Hämta den nu
1. klick Kutools Plus > Kombinera.
2. I dialogrutan Kombinera kalkylblad - Steg 1 av 3, kontrollera Kombinera flera kalkylblad från arbetsboken till ett kalkylblad alternativet och klicka på Nästa knapp.
3. I dialogrutan Kombinera kalkylblad - steg 2 av 3 gör du så här:
(1) Välj arbetsboken i Arbetsbokslista och klicka sedan på Bläddra knapp bakom varje kalkylblad för att specificera intervallet från varje kalkylblad;
(2) Klicka på Lägg till knappen för att lägga till andra arbetsböcker som du kommer att kopiera varierar från, och upprepa sedan ovan (1) för att specificera intervall i den tillagda arbetsboken.
(3) Klicka på Finish knapp.
Kutools för Excel - Innehåller mer än 300 praktiska verktyg för Excel. Fullversion gratis provperiod 30 dagar, inget kreditkort krävs! Hämta den nu
4. Sedan kommer en Kutools for excel-dialogruta ut och ber om att spara kombinationsscenariot. Klicka på Ja knapp eller Nej knappen som du behöver.
Hittills har alla angivna intervall från flera kalkylblad eller arbetsböcker kopierats och klistrats in i en ny arbetsbok.