Looptydfout 1004: Plak spesiale metode van reeksklas het misluk

  • Deel Dit
Hugh West

Een van die mees algemene probleme wat ons teëkom terwyl ons met kopieer en plak in VBA werk, is die looptydfout 1004 : PasteSpecial Method of Range Class Failed . In hierdie artikel sal ek jou wys wat die moontlike redes agter hierdie fout is en hoe om dit op te los, met behoorlike voorbeelde en illustrasies.

Laai die oefenwerkboek af

Laai hierdie oefenwerkboek af om te oefen terwyl jy hierdie artikel lees.

PasteSpecial Method Failed.xlsm

PasteSpecial Method of Range Class Failed: Causes en oplossings

Sonder verdere vertraging, kom ons gaan na ons hoofbespreking. Dit wil sê, wat kan die moontlike redes agter hierdie fout wees, en hoe om dit op te los.

Rede 1: Toegang tot PasteSpecial-metode sonder om enigiets te kopieer

Dit is die mees algemene rede vir die fout. Dit wil sê om toegang tot die PasteSpecial -metode te kry sonder om iets te kopieer.

Om dit duidelik te verstaan, kontroleer die volgende VBA kode.

⧭ VBA-kode:

2259

Hier het ons die PasteSpecial -metode van VBA gebruik sonder enigiets te kopieer. Dus sal Excel 'n looptydfout 1004 vertoon wanneer jy dit hardloop.

⧭ Oplossing:

Om hierdie probleem op te los, moet jy eers 'n reeks selle kopieer en dan toegang tot die PasteSpecial -metode.

5531

Wanneer jy hierdie kode hardloop, dit salplak die formules van die reeks B3:B5 van die aktiewe werkblad na die geselekteerde reeks.

Lees meer: ​​ PasteSpecial-metode van werkbladklas het misluk (Redes en oplossings)

Rede 2: Toegang tot PasteSpecial-metode met spelfout

Dit is nog 'n algemene rede agter die fout. Dit wil sê om toegang te verkry tot die PasteSpecial -metode met spelfout(e) in enige argument.

Kyk na die volgende VBA -kode om dit duidelik te maak. Hier het ons 'n spelfout in die argument xlPasteAll gemaak.

⧭ VBA-kode:

4149

Wanneer jy hierdie kode laat loop, sal jy die looptydfout 1004 kry.

⧭ Oplossing:

Die oplossing is maklik. Ek is seker jy het dit reeds geraai. Maak net seker dat die spellings van al die argumente korrek gemaak is.

En die fout sal outomaties verdwyn.

Lees Meer: Hoe om Plak te Gebruik Spesiale opdrag in Excel (5 geskikte maniere)

Soortgelyke lesings

  • Excel VBA: Kopieer reeks na 'n ander werkboek
  • Kopieer en plak waardes na volgende leë ry met Excel VBA (3 voorbeelde)
  • Pas VBA PasteSpecial toe en hou bronformatering in Excel
  • Hoe om dieselfde waarde in veelvuldige selle in Excel te kopieer (4 metodes)
  • Excel VBA om rye na 'n ander werkblad te kopieer gebaseer op kriteria

Rede 3: Maak 'n nuwe oopWerkboek na kopiëring wat die kopieer/plak-modus kanselleer

Dit is nog 'n belangrike rede agter die fout. Dit wil sê om iets te doen wat die kopieer/plak-modus kanselleer voordat dit geplak word.

Kyk na die volgende kode om duidelik te verstaan.

⧭ VBA-kode:

5877

Hier het ons die reeks B3:B5 van die Blad1 van 'n werkboek genaamd Werkboek1 gekopieer.

Dan het ons 'n nuwe werkboek genaamd Werkboek2 in dieselfde vouer geskep en probeer om die gekopieerde reeks na die reeks B3:B5 van Blad1 van daardie werkboek.

Maar wanneer ons die kode hardloop, sal dit 'n PasteSpecial Method of Range Class Failed fout vertoon, want die oomblik wat ons die nuwe werkboek skep, die kopieer/plakmodus sal gekanselleer word.

⧭ Oplossing:

Om hierdie probleem op te los, skryf eers die reëls kode af om die nuwe werkboek genaamd Werkboek2 te skep.

Voeg dan die reëls in om Werkboek1 te aktiveer en kopieer die verlangde reeks daaruit.

En laastens, aktiveer Werkboek2 en plak die gekopieerde reeks daar.

4801

Laat hierdie kode hardloop. Dit sal die reeks B3:B5 vanaf Blad1 van Werkboek1 kopieer.

En plak dit in Blad1 van die nuutgeskepte werkboek genaamd Werkboek2 .

⧭ Voorsorgmaatreël:

Natuurlik, moenie vergeet om Werkboek1 oop te hou terwyl jy diekode.

Lees meer: ​​ Hoe om kopieer en plak in Excel te deaktiveer sonder makro's (met 2 kriteria)

Rede 4: Verander Application.CutCopyMode na False wat die kopieer/plakmodus kanselleer

Laastens kan daar nog 'n rede wees waarom die fout gebeur. Ons kan die Application.CutCopyMode verkeerdelik afskakel voordat ons toegang tot die PasteSpecial -metode kry.

Alhoewel dit nie 'n baie algemene praktyk is nie, maak ons ​​dit soms nog steeds wanneer ons moet werk met 'n lang aantal reëls.

Sien die volgende kode om dit duidelik te verstaan. Hier het ons die reeks B3:B5 gekopieer, maar die CutCopyMode gekanselleer voordat ons dit geplak het.

⧭ VBA-kode:

9547

Wanneer jy die kode sal laat loop, sal dit die PasteSpecial Method of Range Class Failed -fout wys.

⧭ Oplossing:

Ek dink julle het nou almal die oplossing geraai. Dit is eintlik redelik eenvoudig. Verwyder net die reël van die kode wat die CutCopy -modus afskakel.

Dus, die korrekte VBA -kode sal wees:

8627

Dit sal die reeks B3:B5 kopieer en dit oor die D3:D5 plak sonder enige probleme.

Lees meer: ​​ VBA Plak spesiaal om waardes en formate in Excel te kopieer (9 voorbeelde)

Dinge om te onthou

Hier het ek slegs die probleme gewys wat jy kan teëkom terwyl jy met die PasteSpecial -metode in VBA werk. As jywil jy die PasteSpecial -metode in detail leer ken, besoek hierdie skakel .

Gevolgtrekking

So, kortliks, hierdie is die redes wat die looptydfout 1004: PasteSpecial Method od Range Class Failed in jou kode kan veroorsaak. Ek hoop jy het al die punte duidelik verstaan ​​en dit sal jou baie help in die toekoms. Ken jy enige ander redes? En het jy enige probleme? Vra ons gerus. En moenie vergeet om ons webwerf ExcelWIKI te besoek vir meer plasings en opdaterings nie.

Hugh West is 'n hoogs ervare Excel-afrigter en ontleder met meer as 10 jaar ondervinding in die bedryf. Hy het 'n Baccalaureusgraad in Rekeningkunde en Finansies en 'n Meestersgraad in Besigheidsadministrasie. Hugh het 'n passie vir onderrig en het 'n unieke onderrigbenadering ontwikkel wat maklik is om te volg en te verstaan. Sy kundige kennis van Excel het duisende studente en professionele persone wêreldwyd gehelp om hul vaardighede te verbeter en uit te blink in hul loopbane. Deur sy blog deel Hugh sy kennis met die wêreld, en bied gratis Excel-tutoriale en aanlyn opleiding aan om individue en besighede te help om hul volle potensiaal te bereik.