Vormindage andmed kohandatud numbrivormingutega, kasutades Microsoft Excelis VBA -d

Lang L: none (table-of-contents)

Selles artiklis loome makro, et vormindada antud andmed soovitud kohandatud numbrivormingus VBA abil.

Selle näite toorandmed koosnevad müügimeeskonna andmetest. Toorandmed sisaldavad nime, toote ID -d, toote hinda, müüdud kogust ja kogumüüki.

Enne makro käivitamist tuleb veerus P määrata kohandatud numbrivorming ja veeru number, milles soovite kohandatud numbrivormingut rakendada veerus Q.

Makro „Vormindamine” käivitamiseks klõpsake nuppu „Vorminda”.

Makro muudab antud andmete vormingut vastavalt kohandatud numbrivormingule.

Loogiline seletus

See makro valib numbrivormingu veerust P ja määrab numbrivormingu veergudele, mis on määratud veerus Q veergude numbritega.

Selles makros oleme kasutanud silmuste tegemiseks kahte DO UNILIL silmust. Esmalt DO UNILIL kasutatakse silmust, kuni kõik numbrivormingud on veergudele rakendatud. Teist tsüklit DO UNTIL kasutatakse kõigi veerunumbrite leidmiseks, mis on määratud ja eraldatud komaga (,).

Koodi selgitus

strCol = Vasak (txt, InStr (txt, ",") - 1)

Ülaltoodud koodi kasutatakse veerunumbri eraldamiseks stringist, mis sisaldab kõiki veerunumbreid komadega (,) eraldatuna.

Veerud (CInt (strCol)). NumberFormat = wks. Lahtrid (intRow, 16). Väärtus

Ülaltoodud koodi kasutatakse kohandatud numbrivormingu rakendamiseks määratud veerus.

txt = paremal (txt, Len (txt) - InStr (txt, ","))

Ülaltoodud koodi kasutatakse eraldatud stringi eraldamiseks pärast veeru numbri eemaldamist määratletud stringist.

Palun järgige koodi allpool

Valik Explicit Sub Formatting () 'Muutujate deklareerimine Dim wks kui tööleht Dim intRow Kui pikk Dim strCol String Dim txt kui string' Muutujate initsialiseerimine Set wks = Töölehed ("Format") intRow = 4 'Silmutamine 16. veerus, kuni tühi väärtus on leitud Do Before IsEmpty (wks.Cells (intRow, 16)) 'Kohandatud numbrivormingu väärtuse määramine txt = wks. Lahtrid (intRow, 17)' Silmustamine ja komaga eraldatud veerunumbri leidmine (,) Do Before InStr ( txt, ",") = 0 'Veerunumbri hankimine strCol = Left (txt, InStr (txt, ",") - 1)' Numbrivormingu määramine Veerud (CInt (strCol)). NumberFormat = wks.Cells (intRow , 16) .Väärtus 'Stringi kärpimine järgmise veerunumbri leidmiseks pärast koma (,) txt = Parem (txt, Len (txt) - InStr (txt, ",")) Loop' Numbrivormingu määramine Veerud (CInt (txt)). NumberFormat = wks.Cells (intRow, 16). Value intRow = intRow + 1 Loop End Sub

Kui teile see blogi meeldis, jagage seda oma sõpradega Facebookis. Lisaks saate meid jälgida Twitteris ja Facebookis.

Tahaksime sinust kuulda, andke meile teada, kuidas saaksime oma tööd paremaks muuta ja teie jaoks paremaks muuta. Kirjuta meile meilisaidile

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave