Noderīgi diapazona objektu rekvizīti programmai Excel VBA, kas būtu jāzina ikvienam

Diapazona objektam ir desmitiem īpašību. Jūs varat rakstīt VBA programmas bez pārtraukuma nākamos 12 mēnešus un nekad neizmantot tās visas. Šeit ir sniegts īss pārskats par dažiem visbiežāk izmantotajiem Excel VBA diapazona rekvizītiem. Lai iegūtu pilnīgu informāciju, skatiet palīdzības sistēmu VBE. (Lai saņemtu palīdzību saistībā ar Excel VBA, skatiet šos papildu resursus .)

Daži Excel VBA diapazona rekvizīti ir tikai lasāmi rekvizīti, kas nozīmē, ka kods var aplūkot to vērtības, bet nevar tās mainīt (“Skatieties, bet nepieskarieties”). Piemēram, katram Excel VBA diapazona objektam ir Address rekvizīts, kurā ir diapazona adrese. Varat piekļūt šim tikai lasāmajam īpašumam, taču nevarat to mainīt — tas ir pilnīgi loģiski, ja par to domājat.

Starp citu, turpmākie piemēri parasti ir apgalvojumi, nevis pilnīgas procedūras. Ja vēlaties izmēģināt kādu no šiem (un jums vajadzētu), izveidojiet apakšprocedūru, lai to izdarītu. Turklāt daudzi no šiem VBA priekšrakstiem darbojas pareizi tikai tad, ja darblapa ir aktīvā lapa.

Excel VBA: rekvizīts Value

Rekvizīts Value apzīmē šūnā esošo vērtību. Tas ir lasīšanas un rakstīšanas rekvizīts, tāpēc jūsu VBA kods var nolasīt vai mainīt vērtību.

Šis paziņojums parāda ziņojuma lodziņu, kas parāda vērtību 1. lapas šūnā A1:

MsgBox Worksheets("Sheet1").Range("A1").Vērtība

Pats par sevi saprotams, ka vērtību vērtību var nolasīt tikai vienas šūnas diapazona objektam. Piemēram, šāds paziņojums ģenerē kļūdu:

MsgBox Worksheets("Sheet1").Range("A1:C3").Vērtība

Taču rekvizītu Value var mainīt jebkura lieluma diapazonam. Šis paziņojums ievada skaitli 123 katrā diapazona šūnā:

Darblapas("1. lapa"). Diapazons("A1:C3"). Vērtība = 123

Vērtība ir Excel VBA diapazona objekta noklusējuma rekvizīts. Citiem vārdiem sakot, ja diapazonam izlaižat rekvizītu, programma Excel izmanto tā rekvizītu Value. Abi šie priekšraksti ievada vērtību 75 aktīvās darblapas šūnā A1:

Diapazons("A1"). Vērtība = 75
Diapazons ("A1") = 75

Excel VBA: rekvizīts Teksts

Rekvizīts Teksts atgriež virkni, kas attēlo tekstu tādā veidā, kā tas ir parādīts šūnā — formatēto vērtību. Rekvizīts Teksts ir tikai lasāms. Pieņemsim, ka šūnā A1 ir vērtība 12,3 un tā ir formatēta tā, lai parādītu divus skaitļus aiz komata un dolāra zīmi ($ 12,30). Šis paziņojums parāda ziņojuma lodziņu ar 12,30 ASV dolāriem:

MsgBox Worksheets("Sheet1").Range("A1").Teksts

Bet nākamajā paziņojumā tiek parādīts ziņojuma lodziņš ar 12.3:

MsgBox Worksheets("Sheet1").Range("A1").Vērtība

Ja šūnā ir formula, rekvizīts Text atgriež formulas rezultātu. Ja šūnā ir teksts, rekvizīts Teksts un rekvizīts Value vienmēr atgriež vienu un to pašu, jo tekstu (atšķirībā no skaitļa) nevar formatēt tā, lai tas tiktu parādīts atšķirīgi.

Excel VBA: rekvizīts Skaits

Rekvizīts Count atgriež šūnu skaitu diapazonā. Tas saskaita visas šūnas, ne tikai netukšās šūnas. Count ir tikai lasāms īpašums, tāpat kā jūs varētu gaidīt. Šis priekšraksts piekļūst diapazona rekvizītam Count un ziņojuma lodziņā parāda rezultātu (9):

MsgBox diapazons("A1:C3"). Skaits

Excel VBA: kolonnas un rindas rekvizīti

Rekvizīts Kolonna atgriež vienas šūnas diapazona kolonnas numuru. Tā blakuselements, rekvizīts Row, atgriež vienas šūnas diapazona rindas numuru. Abi ir tikai lasāmi īpašumi. Piemēram, šis paziņojums parāda 6, jo šūna F3 atrodas sestajā kolonnā:

MsgBox Sheets ("Sheet1"). Diapazons ("F3"). Kolonna

Nākamajā izteiksmē tiek parādīts 3, jo šūna F3 atrodas trešajā rindā:

MsgBox Sheets("Sheet1").Diapazons("F3").Rinda

Ja Excel VBA diapazona objekts sastāv no vairāk nekā vienas šūnas, rekvizīts Column atgriež diapazona pirmās kolonnas kolonnas numuru, bet rekvizīts Rinda atgriež diapazona pirmās rindas rindas numuru.

Nejauciet kolonnas un rindas rekvizītus ar rekvizītiem Kolonnas un rindas. Rekvizīti Kolonna un rinda atgriež vienu vērtību. Savukārt rekvizīti Kolonnas un rindas atgriež diapazona objektu. Kāda atšķirība ir “s”.

Excel VBA: rekvizīts Adrese

Adrese, tikai lasāms rekvizīts, parāda diapazona objekta šūnas adresi kā absolūtu atsauci (dolāra zīme pirms kolonnas burta un pirms rindas numura). Šis paziņojums parāda tālāk redzamo ziņojuma lodziņu:

MsgBox diapazons (šūnas (1, 1), šūnas (5, 5)). Adrese

Noderīgi diapazona objektu rekvizīti programmai Excel VBA, kas būtu jāzina ikvienam

Šis ziņojuma lodziņš parāda 5 x 5 diapazona rekvizītu Adrese.

Excel VBA: HasFormula rekvizīts

Rekvizīts HasFormula (kas ir tikai lasāms) atgriež vērtību True, ja vienas šūnas diapazonā ir formula. Tas atgriež False, ja šūnā ir kaut kas cits, nevis formula (vai tā ir tukša). Ja diapazons sastāv no vairākām šūnām, VBA atgriež True tikai tad, ja visās diapazona šūnās ir formula, vai False, ja visām diapazona šūnām nav formulas. Rekvizīts atgriež Null, ja diapazonā ir formulas un neformulas. Null ir sava veida neviena zeme: atbilde nav ne patiesa, ne nepatiesa, un jebkurai diapazona šūnai var būt vai nebūt formula.

Strādājot ar rekvizītiem, kas var atgriezt vērtību Null, jums jābūt uzmanīgiem. Precīzāk, vienīgais datu tips, kas var darboties ar Null, ir Variant.

Piemēram, pieņemsim, ka šūna A1 satur vērtību un šūna A2 satur formulu. Šie apgalvojumi rada kļūdu, jo diapazons nesatur visas formulas vai visas neformulas:

Dim FormulaTest kā Būla vērtība
FormulaTest = diapazons("A1:A2").HasFormula

Būla datu tips var apstrādāt tikai True vai False. Nulle liek Excel sūdzēties un parādīt kļūdas ziņojumu. Lai labotu šāda veida situāciju, vislabāk ir nodrošināt, lai FormulaTest mainīgais tiktu deklarēts kā variants, nevis kā Būla vērtība. Nākamajā piemērā tiek izmantota VBA ērtā funkcija TypeName (kopā ar konstrukciju If-Then-Else), lai noteiktu FormulaTest mainīgā datu tipu. Ja diapazonā ir formulas un neformulas, ziņojuma lodziņā tiek parādīts Jaukts! Pretējā gadījumā tas parāda True vai False .

Apakšpārbaudes formulas()
  Dim FormulaTest kā variants
  FormulaTest = diapazons("A1:A2").HasFormula
  Ja TypeName(FormulaTest) = "Null" Tad
    MsgBox "Jaukts!"
  Citādi
    MsgBox FormulaTest
  Beigas Ja
Beigt apakš

Excel VBA: rekvizīts Fonts

Īpašums var atgriezt objektu. Excel VBA diapazona objekta rekvizīts Font ir vēl viens šīs koncepcijas piemērs. Rekvizīts Font atgriež Font objektu.

Fonta objektam, kā jūs varētu gaidīt, ir daudz pieejamu rekvizītu. Lai mainītu kādu diapazona fonta aspektu, vispirms ir jāpiekļūst diapazona fonta objektam un pēc tam jārīkojas ar šī objekta īpašībām. Tas var būt mulsinoši, bet, iespējams, šis piemērs palīdzēs.

Šis paziņojums izmanto objekta Diapazons rekvizītu Font, lai atgrieztu Font objektu. Pēc tam objekta Font rekvizīts Bold ir iestatīts uz True. Vienkāršā angļu valodā šis paziņojums liek šūnai parādīties treknrakstā:

Diapazons("A1").Fonts.Bold = True

Patiesība ir tāda, ka jums nav jāzina, ka strādājat ar īpašu fonta objektu, kas atrodas Excel VBA diapazona objektā. Kamēr jūs izmantojat pareizo sintaksi, tas darbojas lieliski. Bieži vien, ierakstot savas darbības ar makro ierakstītāju, tiek parādīts viss, kas jums jāzina par pareizu sintaksi.

Excel VBA: iekšējais īpašums

Šeit ir vēl viens rekvizīta piemērs, kas atgriež objektu. Diapazona objekta rekvizīts Interjers atgriež iekšējo objektu (dīvains nosaukums, bet tā to sauc). Šis objektu atsauces veids darbojas tāpat kā rekvizīts Font.

Piemēram, šis paziņojums maina objekta Interior rekvizītu Color, kas ietverts objektā Range:

Diapazons("A1").Interjers.Krāsa = 8421504

Citiem vārdiem sakot, šis paziņojums maina šūnas fonu uz vidēji pelēku. Kas tas ir? Jūs nezinājāt, ka 8421504 ir vidēji pelēks? Lai iegūtu ieskatu par Excel brīnišķīgo krāsu pasauli, skatiet blakus esošo sānjoslu “Ātri un netīri krāsu gruntējums”.

Excel VBA: formulas rekvizīts

Rekvizīts Formula apzīmē formulu šūnā. Šis ir lasīšanas un rakstīšanas rekvizīts, tāpēc varat tam piekļūt, lai skatītu formulu šūnā vai ievietotu formulu šūnā. Piemēram, šāds paziņojums ievada SUM formulu šūnā A13:

Diapazons("A13"). Formula = "=SUM(A1:A12)"

Ņemiet vērā, ka formula ir teksta virkne un ir ievietota pēdiņās. Ņemiet vērā arī to, ka formula sākas ar vienādības zīmi, tāpat kā visas formulas.

Ja pati formula satur pēdiņas, lietas kļūst nedaudz sarežģītas. Sakiet, ka vēlaties ievietot šo formulu, izmantojot VBA:

=SUM(A1:A12)&"Veikali"

Šī formula parāda vērtību, kam seko vārds Veikali . Lai šī formula būtu pieņemama, formulas katra pēdiņa jāaizstāj ar divām pēdiņām. Pretējā gadījumā VBA apjūk un apgalvo, ka ir sintakses kļūda (jo tāda ir!). Tātad, šeit ir paziņojums, kas ievada formulu, kurā ir pēdiņas:

Diapazons("A13"). Formula = "=SUM(A1:A12)&"" Veikali"""

Starp citu, varat piekļūt šūnas rekvizītam Formula pat tad, ja šūnai nav formulas. Ja šūnai nav formulas, rekvizīts Formula atgriež to pašu, ko vērtība.

Ja vēlaties uzzināt, vai šūnai ir formula, izmantojiet rekvizītu HasFormula.

Ņemiet vērā, ka VBA “runā” ASV angļu valodā. Tas nozīmē, ka, lai ievietotu formulu šūnā, ir jāizmanto ASV sintakse. Ja izmantojat Excel versiju, kas nav angļu valodā, palīdzības sistēmā lasiet par rekvizītu FormulaLocal.

Excel VBA: rekvizīts NumberFormat

Rekvizīts NumberFormat apzīmē objekta Range skaitļa formātu (izteikts kā teksta virkne). Šis ir lasīšanas un rakstīšanas rekvizīts, tāpēc jūsu VBA kods var pārbaudīt skaitļa formātu vai mainīt to. Šis paziņojums maina A kolonnas skaitļu formātu uz procentiem ar divām zīmēm aiz komata:

Kolonnas("A:A").NumberFormat = "0,00%"

Veiciet šīs darbības, lai skatītu citu skaitļu formātu sarakstu (vēl labāk, kad to darāt, ieslēdziet makro ierakstītāju):

Aktivizējiet darblapu.

Nospiediet Ctrl+1, lai piekļūtu dialoglodziņam Šūnu formatēšana.

Noklikšķiniet uz cilnes Skaitlis.

Atlasiet kategoriju Pielāgots, lai skatītu un lietotu dažas papildu skaitļu formāta virknes.


Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows Microsoft Word atver failus tikai lasīšanas režīmā, padarot tos neiespējamu rediģēt? Neuztraucieties, metodes ir norādītas zemāk

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā labot kļūdas, drukājot nepareizus Microsoft Word dokumentus.Kļūdas Word dokumentu drukāšanā ar mainītiem fontiem, nekārtīgām rindkopām, trūkstoša teksta vai pazaudētu saturu ir diezgan izplatītas. Tomēr nevajag

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Ja prezentācijas laikā esat izmantojis pildspalvu vai marķieri, lai zīmētu uz PowerPoint slaidiem, varat saglabāt zīmējumus nākamajai prezentācijai vai izdzēst tos, lai nākamajā reizē, kad to parādīsit, jūs sāktu ar tīriem PowerPoint slaidiem. Izpildiet šos norādījumus, lai dzēstu pildspalvas un marķiera zīmējumus: Līniju dzēšana pa vienai […]

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Stilu bibliotēkā ir CSS faili, paplašināmās stila lapu valodas (XSL) faili un attēli, ko izmanto iepriekš definētas šablona lapas, lapu izkārtojumi un vadīklas programmā SharePoint 2010. Lai atrastu CSS failus publicēšanas vietnes stilu bibliotēkā: izvēlieties Vietnes darbības → Skatīt Viss vietnes saturs. Tiek parādīts vietnes saturs. Stila bibliotēka atrodas […]

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Nepārsedziet savu auditoriju ar milzīgiem skaitļiem. Programmā Microsoft Excel varat uzlabot informācijas paneļu un pārskatu lasāmību, formatējot skaitļus tā, lai tie tiktu rādīti tūkstošos vai miljonos.

Kā koplietot un sekot līdzi SharePoint vietnēm

Kā koplietot un sekot līdzi SharePoint vietnēm

Uzziniet, kā izmantot SharePoints sociālo tīklu rīkus, kas ļauj indivīdiem un grupām sazināties, sadarboties, koplietot un sazināties.

Kā programmā Excel konvertēt datumus Juliana formātos

Kā programmā Excel konvertēt datumus Juliana formātos

Jūlija datumi ražošanas vidēs bieži tiek izmantoti kā laikspiedols un ātra atsauce partijas numuram. Šāda veida datuma kodēšana ļauj mazumtirgotājiem, patērētājiem un pakalpojumu aģentiem noteikt produkta izgatavošanas laiku un līdz ar to arī produkta vecumu. Jūlija datumi tiek izmantoti arī programmēšanā, militārajā jomā un astronomijā. Savādāk […]

Kā izveidot Access Web App

Kā izveidot Access Web App

Programmā Access 2016 varat izveidot tīmekļa lietotni. Kas tad vispār ir tīmekļa lietotne? Tīmeklis nozīmē, ka tas ir tiešsaistē, un lietotne ir tikai “lietojumprogrammas” saīsinājums. Pielāgota tīmekļa lietotne ir tiešsaistes datu bāzes lietojumprogramma, kurai var piekļūt no mākoņa, izmantojot pārlūkprogrammu. Jūs veidojat un uzturat tīmekļa lietotni darbvirsmas versijā […]

Ātrās palaišanas josla programmā SharePoint 2010

Ātrās palaišanas josla programmā SharePoint 2010

Lielākā daļa SharePoint 2010 lapu ātrās palaišanas joslā lapas kreisajā pusē parāda navigācijas saišu sarakstu. Ātrās palaišanas joslā tiek rādītas saites uz piedāvāto vietņu saturu, piemēram, sarakstiem, bibliotēkām, vietnēm un publicēšanas lapām. Ātrās palaišanas joslā ir divas ļoti svarīgas saites: Visa vietnes satura saite: […]

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Vienkāršām problēmām risinātājs programmā Excel parasti ātri atrod optimālās Risinātāja mainīgā vērtības mērķa funkcijai. Taču dažos gadījumos Solver ir grūti atrast Solver mainīgā vērtības, kas optimizē mērķa funkciju. Šādos gadījumos Solver parasti parāda ziņojumu vai kļūdas ziņojumu, kurā aprakstīta vai apspriesta problēma, ko […]