Տեղեկատվությունը «մաքրելը» նախքան այն ձեր տվյալների բազա ներմուծելը բավականին ստանդարտ է. վերջիվերջո, տվյալների բազա օգտագործել սկսելու պատճառներից մեկն այն է, որ կարողանաք կանխատեսելիորեն հարցումներ կատարել այդ տվյալների բազայից՝ սահմանված չափանիշների համար, այնպես չէ՞… այդպես չէ՞: Այսպիսով, ինչպե՞ս եք վարվում արտաքին իրավիճակներում, երբ, օրինակ, ստիպված եք տեղեկատվություն ներմուծել ֆայլից, որտեղ մեկը մուտքագրում է «$», բայց մյուսը ենթադրում է, որ դուք գիտեք, որ դա դրամական արժեք է, կամ ավելի վատը՝ երբ մեկը մուտքագրում է «am» կամ «pm», բայց մեկ այլ անձ օգտագործում է 24-ժամյա ժամացույցը: Ինչպես միշտ, խնդրին մոտենալու բազմաթիվ եղանակներ կան, բայց մեկ եղանակ է ստուգել, թե արդյոք տողը պարզապես թվերի հավաքածու է, թե արդյոք այն պարունակում է որևէ «ոչ թվեր»: Փոքր VBA-ի միջոցով այս տեսակի ստուգումը պարզ է, և այս հոդվածը ձեզ կցույց տա, թե որքան պարզ է…
Ինչու՞ պետք է դա անենք:
Եթե դուք ներմուծում եք որևէ տեսակի տեղեկատվություն, որի մուտքագրման կամ արդյունահանման եղանակը չեք վերահսկում, ապա այս խնդրին արդեն բազմիցս (շատ!) անգամ բախվել եք. մարդիկ տվյալները մուտքագրում են իրենց համար առավել հարմար ձևով, այլ ոչ թե միատեսակ։ Սա նշանակում է, որ միայն ժամանակի հարց է, թե երբ դուք ստիպված կլինեք դա անել։ անել այն միատեսակ է, նախքան այն ներմուծելը:
Դրա տիպիկ օրինակն այն է, երբ անհրաժեշտ է տվյալներ ներմուծել թվային դաշտ, բայց երբ նայում ես տվյալները, տեսնում ես, որ ոմանք հազարավորներ են առանձնացրել ստորակետերով, ոմանք էլ արժույթի նշան են ավելացրել, և ով էլ ինչ գիտի:
Quickգուշացման արագ խոսք:
Ձեր տվյալների բազայում չմաքրված տվյալների ներմուծումը կարող է շատ աղետալի լինել. Լավագույն դեպքում կարող է շեղել ձեր զեկուցումը, իսկ վատթարագույն դեպքում կարող եք հայտնվել բոլոր տեսակի կոտրված բաներով. փորձում եմ շտկել Մուտքի խնդիրը ամբողջ հանգստյան օրերը:
Ինչպես «ազատվել» այբբենական նիշերից
Իհարկե, կարող եք որոնում կատարել և ձեռքով փոխարինել, բայց դա անելը կարող է ժամանակ պահանջել և կարող է ինչ-որ բան բաց թողնել (եթե որոնում եք, օրինակ, դոլարային նշաններ, կարող եք բաց թողնել եվրոյի նշանը կամ ստորակետերը, տարածությունները և այլն): , Այսպիսով, դրա կատարման ամենադյուրին և հուսալի ձևը թույլ է տալիս Access- ին կատարել քրտնաջան աշխատանք `օգտագործելով ստորև բերված կոդը:
Կոդի վրա
Public Function removeNonNumeric(inString As String) As Long Dim outputString, chrString As String Dim strPos As Integer For strPos = 1 To Len(inString) chrString = Mid(inString, strPos, 1) If IsNumeric(chrString) Then outputString = outputString & chrString Next removeNonNumeric = CLng(outputString) End Function
Ինչ է անում ծածկագիրը

Կոդի հարմարեցումը ձեզ համար
Ինչպես տեսնում եք, գործառույթը վերադարձնում է տվյալների «երկար» տիպը. Եթե աշխատում եք ամբողջ թվերի կամ լողացող կետերի հետ և այլն, ապա դուք կցանկանաք համապատասխանաբար փոխել գործառույթը, որպեսզի այն վերադարձնի ձեր տվյալների բազայի ճիշտ տեսակի արժեքը:
Հեղինակի ներածություն.
Mitchell Pond- ը տվյալների վերականգման փորձագետ է DataNumen, Inc., որը տվյալների վերականգման տեխնոլոգիաների համաշխարհային առաջատարն է, այդ թվում նորոգում SQL Server բազա և գերազանցել վերականգնման ծրագրային արտադրանքները: Լրացուցիչ տեղեկությունների համար այցելեք www.datanumen.com