Kaip įšaldyti "Excel" skydelius naudojant VBA (5 tinkami būdai)

  • Pasidalinti
Hugh West

Šiame straipsnyje parodysiu, kaip galima užšaldyti "Excel" darbalapio langelius naudojant "Visual Basic of Applications" (VBA). Dirbdami "Excel" dažnai turime užšaldyti darbalapio langelius, kad būtų patogiau ir patogiau dirbti. Šiandien sužinosite, kaip tai galite padaryti naudodami VBA .

Panelės įšaldymas "Excel" programoje naudojant VBA (greita peržiūra)

 Sub Freeze_Panes_Row_and_Column() Range("C4").Select ActiveWindow.FreezePanes = True End Sub 

Atsisiųsti praktikos sąsiuvinį

Atsisiųskite šį pratybų sąsiuvinį ir atlikite pratimus, kol skaitysite šį straipsnį.

VBA įšaldymo skydai.xlsm

Įvadas į "Excel" įšaldymo skydelius

"Microsoft Excel" programoje užšaldyti langelius reiškia užšaldyti eilutę arba stulpelį arba abu taip, kad net jei slinkdami slinkties juosta nueisite žemyn arba į dešinę, ta eilutė arba stulpelis visada bus matomi. Paprastai tai daroma su eilutėmis arba stulpeliais, kuriuose yra duomenų rinkinio antraštės.

Pavyzdžiui, pažvelkite į toliau pateiktą duomenų rinkinį. Čia užšaldėme darbalapį iki eilutės 3 ( Metai ) ir stulpelis B ( Produktų pavadinimas ).

Kai slinkdami slinkties juosta eisime žemyn darbalapiu, pamatysime, kad eilutės iki eilutės 3 visada matomi.

Tas pats ir stulpeliui B o mes slinkome į dešinę.

Jei norite rankiniu būdu įšaldyti darbalapio langelius, pasirinkite ląstelę iškart po eilutės ir stulpelio (Cell C4 šiame pavyzdyje) ir eikite į Peržiūrėti> Užšaldymo skydai> Užšaldymo skydai "Excel" įrankių juostoje.

Jei norite užšaldyti tik eilutę, pasirinkite visą eilutę ir eikite į Peržiūrėti> Užšaldymo skydai> Užšaldymo skydai "Excel" įrankių juostoje.

Panašiai, norėdami užšaldyti tik stulpelį, pasirinkite visą stulpelį ir eikite į Peržiūrėti> Užšaldymo skydai> Užšaldymo skydai "Excel" įrankių juostoje.

⧭ Pastabos:

  • Pasirinkite Užšaldyti viršutinę eilutę užšaldyti tik viršutinę eilutę.
  • Panašiai pasirinkite Įšaldyti pirmąjį stulpelį įšaldyti tik pirmąjį stulpelį.

5 būdai, kaip "Excel" programoje įšaldyti langelius naudojant VBA

Sužinojome, kas yra "Excel" skydelių įšaldymas ir kaip tai padaryti rankiniu būdu. Dabar pereikime prie mūsų pagrindinės šiandienos diskusijos, kaip įšaldyti skydelius su VBA .

1. "Excel" programoje įšaldykite tik eilutę naudodami VBA

Pirmiausia pažiūrėkime, kaip galime užšaldyti tik eilutę su VBA .

Kaip aptarta anksčiau, norėdami užšaldyti tik eilutę, pirmiausia turite pasirinkti visą eilutę, esančią po eilute, kurią norite užšaldyti (eilutė 4 šiame pavyzdyje).

Tada turite taikyti Užšaldymo plokštės komanda.

Taigi VBA kodas bus:

⧭ VBA kodas:

 Sub Freeze_Panes_Only_Row() Range("C4").EntireRow.Select ActiveWindow.FreezePanes = True Range("C4").Select End Sub 

⧭ Išėjimas:

Paleiskite šį kodą. Ir pamatysite, kad aktyvusis darbalapis užšaldytas iki eilutės 3 .

⧭ Pastabos:

  • Čia mes naudojome ląstelę C4 pasirinkti bet kurią eilutės ląstelę 4 darbalapio. Jį pasirinkite pagal savo poreikį.
  • Paskutinė kodo eilutė Range("C4").Select skirta panaikinti visos eilutės pasirinkimą. 4 (Bet kokio pasirinkimo panaikinimas reiškia naujo pasirinkimo pasirinkimą, nes "Excel" programoje kažkas turi likti pažymėta). Jei norite, galite praleisti šią eilutę.

Skaityti daugiau: Kaip įšaldyti viršutinę eilutę "Excel" programoje (4 paprasti metodai)

2. Įšaldyti tik stulpelį naudojant VBA programoje "Excel

Matėme, kaip galime įšaldyti eilutę naudodami VBA Dabar pažiūrėkime, kaip užšaldyti stulpelį su VBA .

Panašiai kaip ir eilutės atveju, norėdami užšaldyti tik stulpelį, pirmiausia turite pasirinkti visą stulpelį, esantį į dešinę nuo užšaldomo stulpelio (Column C šiame pavyzdyje).

Tada turite taikyti Užšaldymo plokštės komanda.

Taigi VBA kodas bus:

⧭ VBA kodas:

 Sub Freeze_Panes_Only_Column() Range("C4").EntireColumn.Select ActiveWindow.FreezePanes = True Range("C4").Select End Sub 

⧭ Išėjimas:

Paleiskite šį kodą. Ir pamatysite, kad aktyvusis darbalapis užšaldytas iki stulpelio C .

⧭ Pastabos:

  • Čia mes naudojome ląstelę C4 pasirinkti bet kurį stulpelio langelį C darbalapio. Jį pasirinkite pagal savo poreikį.
  • Paskutinė kodo eilutė Range("C4").Select skirtas panaikinti viso stulpelio pasirinkimą. C (Bet kokio pasirinkimo panaikinimas reiškia naujo pasirinkimo pasirinkimą, nes "Excel" programoje kažkas turi likti pažymėta). Jei norite, galite praleisti šią eilutę.

Skaityti daugiau: Kaip "Excel" programoje įšaldyti 2 stulpelius (5 metodai)

3. Eilutės ir stulpelio įšaldymas naudojant VBA programoje "Excel

Matėme, kaip galime atskirai užšaldyti eilutę ir stulpelį. Šį kartą pažiūrėkime, kaip galime užšaldyti eilutę ir stulpelį kartu.

Norėdami kartu užšaldyti eilutę ir stulpelį, turite pasirinkti ląstelę, esančią po užšaldoma eilute ir į dešinę nuo užšaldomo stulpelio (Cell C4 šiame pavyzdyje).

Tada turite taikyti Užšaldymo plokštės komanda.

Taigi VBA kodas bus:

⧭ VBA kodas:

 Sub Freeze_Panes_Row_and_Column() Range("C4").Select ActiveWindow.FreezePanes = True End Sub 

⧭ Išėjimas:

Paleiskite šį kodą. Ir pamatysite, kad aktyvusis darbalapis užšaldytas iki eilutės 3 ir stulpelis C .

⧭ Pastabos:

  • Čia mes naudojome ląstelę C4 pasirinkti ląstelę po eilute 3 ir į dešinę į stulpelį B . Tai ląstelė C4 . Pasirinkite jį pagal savo poreikius.

Skaityti daugiau: Kaip įšaldyti pasirinktus "Excel" skydelius (10 būdų)

Panašūs skaitiniai:

  • Kaip įšaldyti kelis "Excel" skydelius (4 kriterijai)
  • Spartieji klaviatūros klavišai "Excel" skydeliams įšaldyti (3 spartieji klavišai)
  • Kaip įšaldyti pirmuosius 3 "Excel" stulpelius (4 greiti būdai)

4. Sukurkite naudotojo formą, kad įšaldytumėte skydelius naudodami "Excel" VBA

Matėme, kaip "Excel" darbalapyje naudodami VBA galime užšaldyti eilutę, stulpelį arba ir eilutę, ir stulpelį.

Dabar sukursime naudotojo formą, kad visos skirtingos užduotys būtų sujungtos į vieną sąsają.

⧭ Žingsnis po žingsnio naudotojo formos kūrimo procedūra:

⧪ 1 veiksmas:

  • Paspauskite ALT+F11 klaviatūroje, kad atidarytumėte "Visual Basic
  • Į "Visual Basic redaktorius, eikite į Insert> UserForm įterpti naują Naudotojo forma .

⧪ 2 veiksmas:

  • Naujas Naudotojo forma vadinamas . Naudotojo forma1 bus sukurta VBA
  • Kairėje pusėje Naudotojo forma , gausite Įrankių dėžė vadinamas . Valdymas . Užveskite pelę ant įrankių dėžutės ir ieškokite Teksto langelis (TextBox1) Suradę vieną iš jų, vilkite jį virš Naudotojo forma .
  • Panašiai vilkite ListBox ( ListBox1 ) tiesiai į Teksto langelis ir CommandButton (Commandbutton1) į apatinį dešinįjį kampą Naudotojo forma . Pakeiskite ekrano rodymą CommandButton į GERAI . Naudotojo forma dabar turėtų atrodyti taip:

⧪ 3 veiksmas:

Įdėkite Modulis ( Insert> Modulis ) iš VBA įrankių dėžutė

⧪ 4 veiksmas:

Įterpkite šį tekstą VBA kodą, esantį Modulis .

 Sub Run_UserForm() UserForm1.Caption = "Freeze Panes" UserForm1.TextBox1.Text = Selection.Address UserForm1.TextBox1.BorderStyle = fmBorderStyleSingle UserForm1.ListBox1.BorderStyle = fmBorderStyleSingle UserForm1.ListBox1.ListStyle = fmListStyleOption UserForm1.ListBox1.AddItem "1. Freeze Row" UserForm1.ListBox1.AddItem "2. Freeze Column" UserForm1.ListBox1.AddItem "3. Freeze Both Row and Column"Įkelti UserForm1 UserForm1.Show End Sub 

⧪ 5 veiksmas:

Dukart spustelėkite CommandButton rodomas kaip GERAI . Privatus subdalyvis, vadinamas CommandButton1_Click Atsidarys langas. Jame įveskite šį kodą:

 Jei UserForm1.ListBox1.Selected(0) = True Tada Set Rng = Selection Rng.EntireRow.Select ActiveWindow.FreezePanes = True Rng.Select ElseIf UserForm1.ListBox1.Selected(1) = True Tada Set Rng = Selection Rng.EntireColumn.Select ActiveWindow.FreezePanes = True Rng.Select ElseIf UserForm1.ListBox1.Selected(2) = True TadaActiveWindow.FreezePanes = True Else MsgBox "Select At Least One. ", vbExclamation End If Iškrauti UserForm1 

⧪ 6 veiksmas:

Panašiai dukart spustelėkite TextBox1 . Privatus subdalyvis, vadinamas TextBox1_Change Atsidarys langas. Jame įveskite šį kodą.

 Private Sub TextBox1_Change() On Error GoTo Message Range(TextBox1.Text).Select Message: Note = 5 End Sub 

⧪ 7 veiksmas:

Jūsų Naudotojo forma dabar yra paruoštas naudoti. Pasirinkite ląstelę, esančią žemiau eilutės, kurią reikia užšaldyti, ir dešiniau stulpelio, kurį reikia užšaldyti (ląstelė C4 čia) ir paleiskite Makro vadinamas . Run_UserForm .

⧪ 8 veiksmas:

  • Svetainė Naudotojo forma bus įkelta. Rasite pasirinktos ląstelės adresą ( C4 ) į Tekstinis langelis Jei norite, galite tai pakeisti.
  • Tada pasirinkite bet kurią iš trijų parinkčių, esančių ListBox Čia noriu užšaldyti ir eilutę, ir stulpelį, todėl pasirinkau Įšaldyti ir eilutę, ir stulpelį .
  • Tada spustelėkite GERAI .

⧪ 9 veiksmas:

Darbalapį rasite užšaldytą pagal savo pageidavimą. (Čia užšaldyta iki eilutės 3 ir stulpelis B ).

Susijęs turinys: Kaip "Excel" programoje įšaldyti kadrą (6 greiti triukai)

5. "Excel" įšaldymo langelių alternatyva: lango padalijimas naudojant VBA

Daug kalbėjome apie užšaldyti stiklus Excel programoje. Dabar pažiūrėkime į labai naudingą alternatyvą užšaldyti stiklus "Excel" programoje Padalyti langą komanda.

Galite ActiveWindow.SplitRow arba ActiveWindow.SplitColumn svetainėje VBA padalyti darbalapį į eilutes arba stulpelius.

Pavyzdžiui, norėdami padalyti darbalapį iš eilučių 3 , naudoti:

 ActiveWindow.SplitRow = 3 

Panašiai, norėdami padalyti darbalapį iš stulpelio B , naudoti:

 ActiveWindow.SplitColumn = 2 

⧭ VBA kodas:

 Sub Split_Window() ActiveWindow.SplitRow = 3 ActiveWindow.SplitColumn = 2 End Sub 

⧭ Išėjimas:

Paleiskite kodą, jis padalins aktyvųjį darbalapį iš eilutės 3 ir stulpelis B .

Susijęs turinys: Kaip "Excel" taikyti pasirinktinius įšaldymo skydelius (3 paprasti būdai)

Dalykai, kuriuos reikia prisiminti

  • Prieš taikydami Užšaldymo plokštės "Excel" programoje, turite Atšaldykite visus įšaldymo langelius jau pritaikytas. Priešingu atveju Užšaldymo plokštės komanda neveikia.
  • Svetainė Užšaldymo plokštės komanda neveikia per sujungtas ląstelės. Taigi atjungti juos prieš taikydami Užšaldymo plokštės komandą, jei tokia yra.

Išvada

Taigi, šie metodai yra šie. Užšaldymo plokštės su VBA "Excel". Bandžiau aptarti visus galimus būdus, kaip taikyti Užšaldymo plokštės per Excel programos darbalapį. Turite klausimų? Drąsiai klauskite mūsų. Ir nepamirškite apsilankyti mūsų svetainėje ExcelWIKI daugiau pranešimų ir atnaujinimų.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.