Microsoft Excel에서 VBA를 사용하여 사용자 지정 숫자 형식과 포맷 데이터
이 기사에서는 VBA를 사용하여 원하는 사용자 지정 숫자 형식으로 주어진 데이터의 형식을 지정하는 매크로를 만듭니다.
이 예의 원시 데이터는 영업 팀 데이터로 구성됩니다. 원시 데이터에는 이름, 제품 ID, 제품 가격, 판매 수량 및 총 판매량이 포함됩니다.
매크로를 실행하기 전에 P 열에 사용자 지정 숫자 형식을 지정하고 Q 열에 사용자 지정 숫자 형식을 적용하려는 열 번호를 지정해야합니다.
“포맷”버튼을 클릭하여 “포맷”매크로를 실행합니다.
매크로는 지정된 사용자 지정 숫자 형식에 따라 주어진 데이터의 형식을 변경합니다.
논리 설명
이 매크로는 P 열에서 숫자 형식을 선택하고 Q 열의 열 번호로 지정된 열에 숫자 형식을 할당합니다.
이 매크로에서는 루핑을 위해 두 개의 DO UNTIL 루프를 사용합니다. 첫 번째 DO UNTIL 루프는 모든 숫자 형식이 열에 적용될 때까지 반복하는 데 사용됩니다. 두 번째 DO UNTIL 루프는 지정되고 쉼표 (,)로 구분 된 모든 다른 열 번호를 찾는 데 사용됩니다.
코드 설명
strCol = Left (txt, InStr (txt, “,”)-1)
위 코드는 쉼표 (,)로 구분 된 모든 열 번호를 포함하는 문자열에서 열 번호를 분리하는 데 사용됩니다.
Columns (CInt (strCol)). NumberFormat = wks.Cells (intRow, 16) .Value 위 코드는 지정된 열에 사용자 지정 숫자 형식을 적용하는 데 사용됩니다.
txt = Right (txt, Len (txt)-InStr (txt, “,”))
위 코드는 정의 된 문자열에서 열 번호를 제거한 후 남은 문자열을 분리하는 데 사용됩니다.
아래 코드를 따르십시오
Option Explicit Sub Formatting() 'Declaring variables Dim wks As Worksheet Dim intRow As Long Dim strCol As String Dim txt As String 'Initializing the variables Set wks = Worksheets("Format") intRow = 4 'Looping in 16th column until empty value is found Do Until IsEmpty(wks.Cells(intRow, 16)) 'Assigning the value of custom number format txt = wks.Cells(intRow, 17) 'Looping and finding all the column number separated by comma(,) Do Until InStr(txt, ",") = 0 'Getting the column number strCol = Left(txt, InStr(txt, ",") - 1) 'Assigning the number format Columns(CInt(strCol)).NumberFormat = wks.Cells(intRow, 16).Value 'Truncating the string for finding the next column number after the comma(,) txt = Right(txt, Len(txt) - InStr(txt, ",")) Loop 'Assigning the number format Columns(CInt(txt)).NumberFormat = wks.Cells(intRow, 16).Value intRow = intRow + 1 Loop End Sub
이 블로그가 마음에 들면 Facebook 및 Facebook에서 친구들과 공유하십시오.
[_GoBack] # 여러분의 의견을 듣고 싶습니다. 작업을 개선하고 개선 할 수있는 방법을 알려주십시오. [email protected]로 문의 해주세요