VBA 1004 kļūda (6 galvenie veidi) | Kā novērst izpildlaika kļūdu 1004 VBA?

VBA 1004 kļūda ir izpildlaika kļūda VBA, kas ir pazīstama arī kā lietojumprogrammas vai objekta definēta kļūda, un kāpēc tas ir tāpēc, ka Excel programmā ir ierobežots kolonnu skaits un kad mūsu kods dod komandu iziet ārpus diapazona, mēs saņemam 1004 kļūda, ir arī citas situācijas, kad mēs saņemam šo kļūdu, atsaucoties uz diapazonu, kura lapā nav.

VBA kļūda 1004 programmā Excel

VBA 1004 kļūda ir darbības laika kļūda VBA un rodas, palaižot kodu. Kļūdas ir neatņemama kodēšanas sastāvdaļa, īpaši, rakstot pirmo reizi, VBA var rasties daudzas kļūdas. Tas ir izplatīts visiem, un par to nav lielas problēmas.

Tomēr, lai uzzinātu kļūdu, kāpēc tā nāk, jūs nākamajā nākotnē izvairīsities no šīm kļūdām.

Šajā rakstā mēs apspriedīsim vienu no svarīgām kļūdām Excel “VBA 1004 kļūda”.

6 populārākās Excel VBA 1004 izpildlaika kļūdas

Šo VBA 1004 kļūdu veidni varat lejupielādēt šeit - VBA 1004 kļūdu veidne

# 1 - VBA izpildes laika kļūda 1004: šis nosaukums jau ir aizņemts. Izmēģiniet citu:

Šī kļūda rodas, pārdēvējot lapu.

Ja darblapas nosaukums jau pastāv un ja mēģināt to pašu nosaukumu piešķirt citai lapai, VBA izmet izpildes laika kļūdu 1004, norādot “Nosaukums jau ir uzņemts. Izmēģiniet citu ”

Piemēram, skatiet zemāk redzamo kodu.

Kods:

 Apakškļūda1004_Example () darblapas ("Sheet2"). Name = "Sheet1" End Sub 

Mēģinu pārdēvēt 2. lapu par 1. lapu. Bet man jau ir lapa ar nosaukumu “Sheet1”.

Ja es palaidīšu šo kodu, izmantojot F5 taustiņu vai manuāli, es saņemšu izpildes laika kļūdu 1004: šis nosaukums jau ir aizņemts. Izmēģiniet citu

Tātad, mēģiniet attiecīgi pārdēvēt lapu.

# 2 - VBA izpildes laika kļūda 1004: Objekta “_ Global” metode “Range” neizdevās:

Tas parasti notiek, kad mēs mēģinām piekļūt nosauktajam diapazonam excel ar pareizrakstības kļūdu vai tā vispār nav darblapā, uz kuru atsaucaties.

Šim nolūkam šūnu diapazonu esmu nosaucis kā “Virsraksti”, kā parādīts zemāk esošajā attēlā.

Tagad, izmantojot diapazona objektu, es varu piekļūt šim diapazonam.

Kods:

 Apakškļūda1004_Example () Range ("Headings"). Atlasiet End Sub 

Ja palaidīsit šo kodu, nospiežot taustiņu F5, šis kods izvēlēsies nosaukto diapazonu.

Bet, ja nepareizi pieminēšu nosaukto diapazonu, es saņemšu izpildes laika kļūdu 1004: Objekta '_ Global' metode “Range” neizdevās

Kods:

 Apakškļūda1004_Example () Range ("Headngs"). Atlasiet End Sub 

Palaidiet šo kodu manuāli vai izmantojot taustiņu F5 un skatiet rezultātu.

# 3 - VBA izpildes laika kļūda 1004: diapazona klases metodes izvēle neizdevās:

Tas parasti notiek, kad mēs mēģinām atlasīt šūnas, kas nav aktīvā lapa, nepadarot lapu atlasītu vai aktīvu.

Piemēram, skatiet zemāk esošo kodu.

Kods:

 Apakškļūda1004_Example () darblapas ("Sheet1"). Diapazons ("A1: A5"). Atlasiet End Sub 

Iepriekš minētais kods saka atlasīt šūnas A1 līdz A5 darblapā “Sheet1”. Lai eksperimentētu, mana pašreizējā aktīvā lapa ir “Sheet2”, nevis “Sheet1”.

Es palaidīšu šo kodu, izmantojot F5 taustiņu, vai manuāli, lai redzētu, kas notiek.

Mēs saņēmām izpildes laika kļūdu 1004: neizdevās atlasīt diapazona klases metodi. Tas tāpēc, ka, neaktivizējot lapu, mēs cenšamies atlasīt šīs lapas šūnas. Tāpēc vispirms mums ir jāaktivizē milzīgais daudzums, pirms mēs atlasām šūnas. Zemāk ir pareizs kods.

# 4 - VBA izpildlaika kļūda 1004 neizdevās atvērt objekta darbgrāmatas:

Tas parasti notiek, mēģinot atvērt darbgrāmatu, kuras nosaukums ir tāds pats kā otrai jau atvērtajai darbgrāmatai.

Piemēram, skatiet zemāk esošo kodu.

Kods:

 Apakškļūda1004_Example () Dim wb As Workbook Set wb = Workbooks.Open ("\\ FileName.xls", ReadOnly: = True, CorruptLoad: = xlExtractData) Beigas 

Tas radīs zemāk redzamo kļūdu.

# 5 - VBA izpildlaika kļūda 1004 metode Diemžēl mēs nevarējām atrast:

Šī kļūda rodas tāpēc, ka, mēģinot atvērt failu, kas nepastāv minētajā ceļā, to var pārvietot, pārdēvēt vai izdzēst no minētā ceļa. Viens no iemesliem tam ir nepareiza ceļa vai faila nosaukuma tips ar Excel paplašinājumu.

Tagad ieskatieties zemāk redzamajā kodā.

Kods:

 Apakškļūda1004_Example () darbgrāmatas. Atveriet faila nosaukumu: = "E: \ Excel Files \ Infographics \ ABC.xlsx" Beigu apakšdaļa 

Šis kods saka atvērt failu “ABC.xlsx” minētajā mapes ceļā.

Es noteikti zinu, ka minētajā mapes ceļā nav faila. Kad minētajā mapē nav faila, mēs saņemsim izpildlaika kļūdas 1004 metodi. Diemžēl mēs nevarējām atrast.

# 6 - VBA izpildlaika kļūda 1004 Metode diapazona klases aktivizēšana neizdevās:

Šī kļūda rodas galvenokārt tāpēc, ka tiek aktivizēts šūnu diapazons, neaktivizējot darblapu.

Piemēram, skatiet zemāk esošo kodu.

Kods:

 Apakškļūda1004_Example () darblapas ("Sheet1"). Diapazons ("A1: A5"). Aktivizējiet End Sub 

Šī kļūda ir ļoti līdzīga tai, kuru esam redzējuši izpildes laika kļūdā 1004: Atlasīt diapazona klases metodi neizdevās.

Ja es palaidīšu manuāli vai izmantojot F5 taustiņu, mēs saņemsim zemāk kļūdu.

Jo, neaktivizējot lapu, mēs nevaram aktivizēt šūnas tajā. Tātad vispirms aktivizējiet lapu un pēc tam aktivizējiet šīs lapas šūnas.


$config[zx-auto] not found$config[zx-overlay] not found