Izpratne par Excel VBA IsDate funkciju

VBA funkcija IsDate it kā norāda, vai teksta virkni var interpretēt kā datumu. Piemēram, visas šīs izteiksmes tiek novērtētas kā True:

IsDate (“25/5/2015”)
IsDate (“16. janvāris”)
IsDate (“12-1”)
IsDate (“12/1/15”)
IsDate (“2/30”)
IsDate (“30/2”)

Pēdējos divos piemēros ievērojiet, ka IsDate nav izvēlīgs attiecībā uz dienas un mēneša secību. Abas šīs virknes var interpretēt kā datumu, tāpēc IsDate atgriež True (neatkarīgi no jūsu sistēmas datuma formāta iestatījumiem).

Tālāk ir sniegta informācija no Microsoft atbalsta raksta :

VBA datuma funkcijas IsDate, Format, CDate un CVDate izmanto funkciju, kas atrodama OLE Automation (OleAut32.dll). Šī funkcija meklē visus iespējamos datuma formātus, marķierizējot katru atdalīto vērtību virknē, kas attēlo datumu, un atgriež Būla vērtību, kas norāda, vai ievadi var attēlot kā datumu.

Tas ir svarīgi atcerēties, izmantojot funkciju, lai interpretētu datumu, kurā ir 2 ciparu gads. Dažādās lokalizācijās tiek izmantoti dažādi datuma formāti (t.i., mm/dd/gg, gg/mm/dd, DD MMM GG , GG MMM DD un tā tālāk), un tāpēc funkcija mēģina ievadīt ciparus visās pozīcijās, līdz funkcija ir atradusi derīgu datumu vai izsmēlusi visas iespējas.

Tas, ka IsDate atpazīst virkni kā datumu, nenozīmē, ka virkni var droši pārveidot par datumu. Dažos gadījumos rezultāts ir neskaidrs. Piemēram, kā ir ar šo izteicienu?

IsDate (“29-Feb-01”)

2001. gada 29. februāris nav derīgs datums. Tomēr šī izteiksme atgriež True, jo 1929. gada 1. februāris (un 1929. gada 2. janvāris) ir derīgi datumi. Un tie paši datumi ir arī 2029. gadā.

Meklējot IsDate dokumentāciju, tika atrasts tukšs. Pamatojoties uz testēšanu, IsDate kā atdalīšanas rakstzīmes pieņem jebkuru no šīm rakstzīmēm: slīpsvītru (/), defisi (-), komatu (,), punktu (.) un atstarpi.

Tāpēc visi šie izteicieni atgriež True:

IsDate (“5.1”)
IsDate (“30 6”)
IsDate (“30,6”)
IsDate (“1/2”)

Bet tad ir šī anomālija: šādi izteicieni atgriež True:

IsDate (“5.1.5”)
IsDate (“5.1.05”)

Tomēr nepārprotami šī izteiksme atgriež False:

IsDate (“5.1.2005”)

Pieņemsim, ka esat izveidojis lietotāja veidlapu ar ievades lodziņu, kurā lietotājs ievada datumu. Ir jābūt skaidram, ka IsDate izmantošana ieraksta apstiprināšanai nav ļoti uzticama.

Lietas kļūst vēl mulsinošākas, kad saprotat, ka IsDate aptver arī laika vērtības. (Nav atbilstošas ​​funkcijas IsTime.) Tātad visas šādas izteiksmes atgriež True:

IsDate (“4:45”)
IsDate (“4,45”)
IsDate (“4 45”)
IsDate (“4/45”)
IsDate (“23:59”)

Šie izteicieni atgriež False:

IsDate (“4:60”)
IsDate (“24.45”)

Ir svarīgi norādīt, ka IsDate neparāda visas šīs dīvainības, kad jūs nododat diapazona argumentu. Piemēram:

IsDate (diapazons ("A1"))

Šķiet, ka IsDate ir pilnīgi uzticams, lai identificētu šūnas, kurās ir datums vai laiks. Tas, piemēram, neidentificē šūnu, kurā kā datums ir 5.1. Ja kodam ir jānosaka, vai virkni var interpretēt kā datumu, labākais risinājums ir ievietot šo virkni šūnā un pēc tam ierakstīt kodu, lai pārbaudītu šūnas saturu.


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 […]