Klipp ut, kopier og lim inn fra en makro - VBA -kodeeksempler

I denne opplæringen lærer du flere forskjellige metoder for å kopiere og lime inn og klippe ut og lime inn ved hjelp av en VBA -makro. Les veiledningen til leksjonen på Value Pasting and PasteSpecial for mer avanserte alternativer for kopiering og liming.

Slik bruker du denne koden: Åpne Visual Basic Editor (Alt + F11), Sett inn en ny modul (Sett inn> modul) og kopier og lim inn ønsket kode i modulen.

Kopier (klipp ut) og lim inn en enkelt celle

Dette eksemplet kopierer eller klipper og limer inn en enkelt celle, A1 over til B1:

123456789 Sub Paste_OneCell ()'Kopier og lim inn enkeltcelleOmråde ("A1"). Kopieringsområde ("B1")'Klipp og lim inn enkeltcelleOmråde ("A1"). Klippområde ("B1")Slutt Sub

Kopier markering

Hvis du vil kopiere det aktive valget, bruker du dette:

123456789101112 Sub CopySelection ()Lim inn i et definert områdeSelection.copy -område ("b1")'Offset Paste (forskyver 2 celler ned og 1 til høyreValg. KopiSelection.offset (2,1). Lim innApplication.CutCopyMode = FalskSlutt Sub

Kopier (klipp ut) og lim inn en rekke celler

Dette eksemplet kopierer eller klipper og limer inn en rekke celler, A1: A3 over til B1: B3:

123456789 Sub Paste_Range ()'Kopier og lim inn en rekke cellerOmråde ("A1: A3"). Kopier område ("B1: B3")'Klipp og lim inn en rekke cellerOmråde ("A1: A3"). Klippområde ("B1: B3")Slutt Sub

Kopier (klipp ut) og lim inn en hel kolonne

Nedenfor vil vi demonstrere et par raske eksempler. Les artikkelen vår om kopiering og liming av rader og kolonner for detaljerte eksempler, forklaringer og variasjoner.

Dette eksemplet kopierer eller klipper og limer inn en hel kolonne, A over til B:

12345678910 Sub PasteOneColumn ()'Kopier og lim inn kolonneOmråde ("A: A"). Kopier område ("B: B")'Klipp ut og lim inn kolonnenOmråde ("A: A"). Klippområde ("B: B")Slutt Sub

Kopier (klipp ut) og lim inn en hel rad

Dette eksemplet kopierer eller klipper og limer inn en hel rad, 1 over til 2:

12345678910 Sub Paste_OneRow ()'Kopier og lim inn radOmråde ("1: 1"). Kopier område ("2: 2")'Klipp ut og lim inn radOmråde ("1: 1"). Kutt rekkevidde ("2: 2")Slutt Sub

Kopier (klipp ut) og lim inn i et annet regneark eller en arbeidsbok

1234567891011121314 Sub Paste_Other_Sheet_or_Book ()'Klipp ut eller kopier og lim inn i et annet regnearkRegneark ("ark1"). Område ("A1"). Kopier regneark ("ark2"). Område ("B1") 'KopierRegneark ("ark1"). Område ("A1"). Klipp ut regneark ("ark2"). Område ("B1") 'Klipp ut'Klipp ut eller kopier og lim inn i en annen arbeidsbokArbeidsbøker ("bok1.xlsm"). Regneark ("ark1"). Område ("A1"). Kopi _Arbeidsbøker ("book2.xlsm"). Regneark ("ark1"). Område ("B1") 'KopiArbeidsbøker ("bok1.xlsm"). Regneark ("ark1"). Område ("A1"). Klipp _Arbeidsbøker ("book2.xlsm"). Regneark ("ark1"). Område ("B1") 'Klipp utApplication.CutCopyMode = FalskSlutt Sub

Verdi Lim inn

Vanligvis, når du kopierer og limer inn, limer du inn alle egenskapene til en celle: formatering, formler, osv. Med Value Pasting kan du kopiere og lime inn cellers verdier og ingenting annet. Den enkleste måten å Value Paste i VBA er å definere cellens verdi direkte:

123456789101112131415 Sub ValuePaste ()'Verdi Lim inn cellerOmråde ("B1"). Verdi = Område ("A1"). VerdiOmråde ("B1: B3"). Verdi = Område ("A1: A3"). Verdi'Sett verdier mellom regnearkRegneark ("ark2"). Område ("A1"). Verdi = Regneark ("ark1"). Område ("A1"). Verdi'Sett verdier mellom arbeidsbøkerArbeidsbøker ("book2.xlsm"). Regneark ("ark1"). Område ("A1"). Verdi = _Arbeidsbøker ("bok1.xlsm"). Regneark ("ark1"). Område ("A1"). VerdiApplication.CutCopyMode = FalskSlutt Sub

Lim inn spesial

Paste Special lar deg kopiere og lime inn spesifikke egenskaper for celler (eksempler: formater, verdier, kolonnebredder, etc.). Den lar deg også utføre spesielle limoperasjoner (eksempler: hopp over blanke, transponer). Vi vil se på flere eksempler nedenfor, men for en grundig lesing av opplæringen om Value Pasting and Paste Special.

12345678910111213141516171819 Sub PasteSpecial ()'Utfør en Lim inn spesialoperasjon:Område ("A1"). KopierLim inn formaterOmråde ("B1"). PasteSpecial Paste: = xlPasteFormatsLim inn kolonnebredderOmråde ("B1"). PasteSpecial Paste: = xlPasteColumnWidths'Lim inn formlerOmråde ("B1"). PasteSpecial Paste: = xlPasteFormulasUtfør spesialoperasjoner med flere lim samtidig:Område ("A1"). KopierLim inn formater og transponerOmråde ("B1"). PasteSpecial Paste: = xlPasteFormats, Operation: = xlNone, SkipBlanks: = _Falsk, Transponere: = SantApplication.CutCopyMode = FalskSlutt Sub

Fjern utklippstavlen

Etter kopiering og liming vil du kanskje tømme utklippstavlen (vi gjør det i noen av kodeeksemplene ovenfor). For å fjerne Excel -utklippstavlen, setter vi Application.CutCopyMode til False:

1 Application.CutCopyMode = Falsk

Dette vil fjerne Excel's utklippstavle. Imidlertid vil det ikke fjerne Windows utklippstavlen. For å fjerne vinduets utklippstavle, følg instruksjonene her.

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

wave wave wave wave wave