Oblikujte podatke prilagođenim formatima brojeva pomoću VBA u programu Microsoft Excel

Sadržaj

U ovom ćemo članku stvoriti makronaredbu za oblikovanje danih podataka u željenom formatu prilagođenog broja pomoću VBA.

Sirovi podaci za ovaj primjer sastoje se od podataka prodajnog tima. Sirovi podaci sadrže naziv, ID proizvoda, cijenu proizvoda, prodatu količinu i ukupnu prodaju.

Prije izvođenja makronaredbe potrebno je navesti format prilagođenog broja u stupcu P i broj stupca u koji se želi primijeniti format prilagođenog broja u stupcu Q.

Pritisnite gumb "Oblikovanje" da biste pokrenuli makronaredbu "Oblikovanje".

Makro će promijeniti oblikovanje danih podataka prema navedenom formatu prilagođenog broja.

Logično objašnjenje

Ovaj makro odabire oblikovanje broja iz stupca P i dodjeljuje oblikovanje broja stupcima navedenim brojevima stupaca u stupcu Q.

U ovom makrou za petlje smo koristili dvije DO UNTIL petlje. Prvo DO UNTIL Loop koristi se za petlju sve dok se svi brojčani formati ne primijene na stupce. Druga DO UNTIL petlja koristi se za pronalaženje svih različitih brojeva stupaca navedenih i odvojenih zarezima (,).

Objašnjenje koda

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

Gornji kôd koristi se za odvajanje broja stupca od niza koji sadrži sve brojeve stupaca odvojene zarezima (,).

Stupci (CInt (strCol)). NumberFormat = wks.Cells (intRow, 16) .Vrijednost

Gornji kôd koristi se za primjenu prilagođenog formata broja na navedeni stupac.

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

Gornji kôd koristi se za odvajanje izostavljenog niza nakon uklanjanja broja stupca iz definiranog niza.

Molimo slijedite dolje za kôd

Opcija Eksplicitno podformatiranje () 'Deklariranje varijabli Dim wks kao radni list Dim intRow Dugo Dim strCol Kao String Dim txt As String' Inicijalizacija varijabli Postavi wks = Radni listovi ("Format") intRow = 4 'Petlja u 16. stupcu sve dok vrijednost nije prazna pronađeno Do Do IsEmpty (wks.Cells (intRow, 16)) 'Dodjeljivanje vrijednosti prilagođenog formata broja txt = wks.Cells (intRow, 17)' Ponavljanje i pronalaženje svih brojeva stupaca odvojenih zarezima (,) Učiniti do InStr ( txt, ",") = 0 'Dobivanje broja stupca strCol = Lijevo (txt, InStr (txt, ",") - 1)' Dodjela stupca formata broja (CInt (strCol)). NumberFormat = wks.Cells (intRow , 16) .Vrednost 'Skraćivanje niza za pronalaženje broja sljedećeg stupca nakon zareza (,) txt = Desno (txt, Len (txt) - InStr (txt, ",")) Loop' Dodjeljivanje formata broja Stupci (CInt (txt)). NumberFormat = wks.Cells (intRow, 16) .Vrijednost intRow = intRow + 1 petlja End Sub

Ako vam se dopao ovaj blog, podijelite ga sa svojim prijateljima na Facebooku. Također, možete nas pratiti na Twitteru i Facebooku.

Voljeli bismo vas čuti, javite nam kako možemo poboljšati svoj rad i učiniti ga boljim za vas. Pišite nam na web stranici e -pošte

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave