Oblikujte podatke s številčnimi oblikami po meri z uporabo VBA v Microsoft Excelu

Kazalo

V tem članku bomo ustvarili makro za oblikovanje danih podatkov v želeni obliki številke po meri z uporabo VBA.

Neobdelane podatke za ta primer sestavljajo podatki prodajne ekipe. Neobdelani podatki vsebujejo ime, ID izdelka, ceno izdelka, prodano količino in skupno prodajo.

Preden zaženete makro, morate v stolpcu P določiti obliko številke po meri in številko stolpca, v kateri želite uporabiti obliko številke po meri v stolpcu Q.

Kliknite gumb »Oblika«, da zaženete makro »Oblikovanje«.

Makro bo spremenil oblikovanje danih podatkov glede na določeno obliko številke po meri.

Logična razlaga

Ta makro izbere oblikovanje številk iz stolpca P in dodelitev oblikovanja številk stolpcem, določenim s številkami stolpcev v stolpcu Q.

V tem makru uporabljamo dve zanki DO UNTIL za zanko. Najprej se zanka DO UNTIL uporablja za zanko, dokler se vse oblike števila ne uporabijo za stolpce. Druga zanka DO UNTIL se uporablja za iskanje vseh različnih številk stolpcev, ki so podane in ločene z vejicami (,).

Razlaga kode

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

Zgornja koda se uporablja za ločevanje številke stolpca od niza, ki vsebuje vse številke stolpcev, ločenih z vejicami (,).

Stolpci (CInt (strCol)). NumberFormat = wks.Cells (intRow, 16) .Vrednost

Zgornja koda se uporablja za uporabo oblike številke po meri v podanem stolpcu.

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

Zgornja koda se uporablja za ločitev izpuščenega niza po odstranitvi številke stolpca iz definiranega niza.

Za kodo sledite spodaj

Možnost Eksplicitno podoblikovanje () 'Razglasitev spremenljivk Dim wks kot delovni list Dim intRow As Long Dim strCol As String Dim txt As String' Inicializiranje spremenljivk Set wks = Worksheets ("Format") intRow = 4 'Ponavljanje v 16. stolpcu, dokler ni prazna vrednost Najdeno Do Do IsEmpty (wks.Cells (intRow, 16)) "Dodelitev vrednosti oblike številke po meri txt = wks.Cells (intRow, 17)" Ponavljanje in iskanje vse številke stolpca, ločene z vejico (,) Do InStr ( txt, ",") = 0 'Pridobivanje številke stolpca strCol = Levo (txt, InStr (txt, ",") - 1)' Dodelitev stolpcev oblike števila (CInt (strCol)). NumberFormat = wks.Cells (intRow , 16) .Vrednost 'Skrajšanje niza za iskanje številke naslednjega stolpca za vejico (,) txt = Desno (txt, Len (txt) - InStr (txt, ",")) Loop' Dodelitev oblike števila Stolpci (CInt (txt)). NumberFormat = wks.Cells (intRow, 16) .Vrednost intRow = intRow + 1 zanka End Sub

Če vam je bil ta blog všeč, ga delite s prijatelji na Facebooku. Prav tako nam lahko sledite na Twitterju in Facebooku.

Radi bi slišali od vas, nam sporočite, kako lahko izboljšamo svoje delo in ga izboljšamo za vas. Pišite nam na spletnem mestu e -pošte

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave