Преглед садржаја
Један од најчешћих проблема са којима се сусрећемо док радимо са копирањем и лепљењем у ВБА је грешка у времену извођења 1004 : ПастеСпециал Метход оф Ранге Цласс Фаилед . У овом чланку ћу вам показати који су могући разлози иза ове грешке и како да их решите, уз одговарајуће примере и илустрације.
Преузмите Вежбање
Преузмите ову радну свеску да бисте вежбали док читате овај чланак.
ПастеСпециал Метход Фаилед.клсм
ПастеСпециал Метход оф Ранге Цласс Фаилед: Узроци и Решења
Без даљег одлагања, пређимо на нашу главну дискусију. Односно, који су могући разлози иза ове грешке и како их решити.
Разлог 1: Приступ ПастеСпециал методи без копирања било чега
Ово је највише уобичајени разлог за грешку. То јест, покушавате да приступите методи ПастеСпециал без копирања било чега.
Да бисте то јасно разумели, проверите следећи ВБА код.
⧭ ВБА код:
9272
Овде смо користили ПастеСпециал метод ВБА без копирање било чега. Дакле, Екцел ће приказати грешку током извршавања 1004 када га покренете.
⧭ Решење:
Да бисте решили овај проблем, прво морате да копирате опсег ћелија, а затим приступите методи ПастеСпециал .
6227
Када покренете овај код, то ћеналепите формуле опсега Б3:Б5 активног радног листа у изабрани опсег.
Прочитајте више: ПастеСпециал Метода класе радног листа није успела (разлози и решења)
Разлог 2: Приступ ПастеСпециал методи са правописном грешком
Ово је још један уобичајен разлог за грешка. Односно, да приступите методи ПастеСпециал са грешком(ама) у правопису у било ком аргументу.
Погледајте следећи ВБА код да бисте га разјаснили. Овде смо направили правописну грешку у аргументу клПастеАлл .
⧭ ВБА код:
2743
Када покренете овај код, добићете грешку у времену извођења 1004 .
⧭ Решење:
Решење је лако. Сигуран сам да сте то већ погодили. Само се уверите да су сви аргументи правилно написани.
И грешка ће аутоматски нестати.
Прочитајте више: Како се користи Пасте Посебна команда у Екцел-у (5 одговарајућих начина)
Слична читања
- Екцел ВБА: Копирај опсег у другу радну свеску
- Копирајте и налепите вредности у следећи празан ред помоћу Екцел ВБА (3 примера)
- Примените ВБА ПастеСпециал и задржите форматирање извора у Екцел-у
- Како копирати исту вредност у више ћелија у Екцел-у (4 методе)
- Екцел ВБА за копирање редова на други радни лист на основу критеријума
Разлог 3: Отварање новогРадна свеска након копирања која поништава режим копирања/лепљења
Ово је још један важан разлог иза грешке. То јест, да урадите нешто што поништава режим копирања/лепљења пре лепљења.
Погледајте следећи код да бисте боље разумели.
⧭ ВБА код:
2194
Овде смо копирали опсег Б3:Б5 са Схеет1 радне свеске под називом Воркбоок1 .
Онда смо направили нову радну свеску под називом Радна свеска2 у истој фасцикли и покушали да налепимо копирани опсег у опсег Б3:Б5 од Схеет1 те радне свеске.
Али када покренемо код, приказаће грешку ПастеСпециал Метход оф Ранге Цласс Фаилед , јер у тренутку када креирамо нову радну свеску, режим копирања/лепљења ће бити отказан.
⧭ Решење:
Да бисте решили овај проблем, прво напишите низ редове кода да бисте креирали нову радну свеску под називом Радна свеска2 .
Затим уметните редове да бисте активирали Радна свеска1 и копирајте жељени опсег из ње.
И на крају, активирајте Радна свеска2 и налепите копирани опсег тамо.
3222
Покрените овај код. Копираће опсег Б3:Б5 из Схеет1 од Воркбоок1.
И налепити га у Схеет1 новокреиране радне свеске под називом Воркбоок2 .
⧭ Мера предострожности:
Очигледно, не заборавите да држите Воркбоок1 отвореним док покрећетецоде.
Прочитајте више: Како онемогућити копирање и лепљење у Екцел без макроа (са 2 критеријума)
Разлог 4: Пребацивање Апплицатион.ЦутЦопиМоде на Фалсе што поништава режим копирања/лепљења
Коначно, можда постоји још један разлог за појаву грешке. Можда ћемо грешком искључити Апплицатион.ЦутЦопиМоде пре него што приступимо методи ПастеСпециал .
Иако то није уобичајена пракса, ипак понекад то учинимо када треба да радите са великим бројем редова.
Погледајте следећи код да бисте га јасно разумели. Овде смо копирали опсег Б3:Б5 , али смо отказали ЦутЦопиМоде пре него што смо га налепили.
⧭ ВБА код:
2449
Када покренете код, он ће показати грешку ПастеСпециал Метход оф Ранге Цласс Фаилед .
⧭ Решење:
Претпостављам да сте до сада већ сви погодили решење. У ствари је прилично једноставно. Само уклоните ред из кода који искључује режим ЦутЦопи .
Дакле, тачан ВБА код ће бити:
2089
Копираће опсег Б3:Б5 и налепити га преко Д3:Д5 без икаквих проблема.
Прочитајте више: ВБА налепите специјално за копирање вредности и формата у Екцел (9 примера)
Ствари које треба запамтити
Овде сам приказао само проблеме на које можете наићи док радите са методом ПастеСпециал у ВБА. Акожелите да сазнате детаљније о методи ПастеСпециал , посетите ову везу .
Закључак
Дакле, укратко, ови су разлози који могу изазвати грешку у току извођења 1004: ПастеСпециал Метход од Ранге Цласс Фаилед у вашем коду. Надам се да сте јасно разумели све тачке и да ће вам оне много помоћи у будућности. Да ли знате још неке разлоге? И да ли имате проблема? Слободно нас питајте. И не заборавите да посетите наш сајт ЕкцелВИКИ за више постова и ажурирања.