TOP

Excel에 우크라이나어로 작성된 합계, 숫자, 숫자

설명

표시해야 하는 경우가 자주 발생합니다. Excel에서 우크라이나어로 작성된 숫자 . 예를 들어, 서면 문서의 페이지 수(숫자 "27")를 다음과 같이 표시합니다. "Двадцять сім".

또한, 회계상 무역거래 비용은 반드시 문자로 기재되어야 합니다. 예를 들어 합계 10,568.23은 다음과 같이 서면으로 표시되어야 합니다. "Десять тисяч п'ятсот шістдесят вісім грн. 23 коп."즉, 필요한 우크라이나어로 된 합계 , 그러나 Excel에는 이러한 목적을 위한 표준 기능이 없습니다.


VBA 함수 SUMINWORDS에 대한 코드

아래에는 모든 숫자를 우크라이나어의 텍스트 표현, 즉 서면 숫자로 변환하는 VBA의 기성 함수가 있습니다. 이 기능은 사용하기 전에 책에 추가해야 합니다.

이를 위해:

  1. ALT+F11을 눌러 Visual Basic 편집기를 엽니다.
  2. 새로운 빈 모듈 추가 Insert - Module 메뉴를 통해
  3. 이 함수의 텍스트를 복사하여 붙여넣으세요.
Function SUMINWORDS(n As Double, curr As Variant, kop As Variant) As String
 'moonexcel.com.ua 
 Dim Nums1, Nums2, Nums3, Nums4 As Variant
 
 Nums0 = Array("", "одна ", "дві ", "три ", "чотири ", "п'ять ", "шість ", "сім ", "вісім ", "дев'ять ")
 Nums1 = Array("", "один ", "два ", "три ", "чотири ", "п'ять ", "шість ", "сім ", "вісім ", "дев'ять ")
 Nums2 = Array("", "десять ", "двадцять ", "тридцять ", "сорок ", "п'ятдесят ", "шістдесят ", "сімдесят ", _
                        "вісімдесят ", "дев'яносто ")
 Nums3 = Array("", "сто ", "двісті ", "триста ", "чотириста ", "п'ятсот ", "шістсот ", "сімсот ", _
                        "вісімсот ", "дев'ятсот ")
 Nums4 = Array("", "одна ", "дві ", "три ", "чотири ", "п'ять ", "шість ", "сім ", "вісім ", "дев'ять ")
 Nums5 = Array("десять ", "одинадцять ", "дванадцять ", "тринадцять ", "чотирнадцять ", _
                        "п'ятнадцять ", "шістнадцять ", "сімнадцять ", "вісімнадцять ", "дев'ятнадцять ")
  
 If n < 1 Then
   SUMINWORDS = "Нуль " & curr & " " & Round((n - Fix(n)) * 100) & " " & kop
   
If curr = "" Then
   SUMINWORDS = "Нуль"
End If
      
   Exit Function
 End If
 '보조 함수 Class를 사용하여 숫자를 숫자로 나눕니다. 
 ed     = Class(n, 1)
 dec    = Class(n, 2)
 sot    = Class(n, 3)
 tys    = Class(n, 4)
 dectys = Class(n, 5)
 sottys = Class(n, 6)
 mil    = Class(n, 7)
 decmil = Class(n, 8)
 sotmil = Class(n, 9)
 bil    = Class(n, 10)
   
 '수십억 달러 확인 
 Select Case bil
    Case 1
      bil_txt = Nums1(bil) & "мільярд "
    Case 2 To 4
      bil_txt = Nums1(bil) & "мільярди "
    Case 5 To 9
      bil_txt = Nums1(bil) & "мільярдів "
 End Select
   
 '수백만 달러 확인 
 Select Case sotmil
   Case 1 To 9
     sotmil_txt = Nums3(sotmil)
 End Select
  
 Select Case decmil
   Case 1
     mil_txt = Nums5(mil) & "мільйонів "
     GoTo www
   Case 2 To 9
     decmil_txt = Nums2(decmil)
 End Select
 
 Select Case mil
   Case 0
     If decmil > 0 Then mil_txt = Nums4(mil) & "мільйонів "
   Case 1
     mil_txt = Nums1(mil) & "мільйон "
   Case 2, 3, 4
     mil_txt = Nums1(mil) & "мільйона "
   Case 5 To 9
     mil_txt = Nums1(mil) & "мільйонів "
 End Select
 
 If decmil = 0 And mil = 0 And sotmil <> 0 Then sotmil_txt = sotmil_txt & "мільйонів "
 
www:
 sottys_txt = Nums3(sottys)
 
 '우리는 수천명을 확인한다 
 Select Case dectys
   Case 1
     tys_txt = Nums5(tys) & "тисяч "
     GoTo eee
   Case 2 To 9
     dectys_txt = Nums2(dectys)
 End Select
 
 Select Case tys
   Case 0
     If dectys > 0 Then tys_txt = Nums4(tys) & "тисяч "
   Case 1
     tys_txt = Nums4(tys) & "тисячa "
   Case 2, 3, 4
     tys_txt = Nums4(tys) & "тисячі "
   Case 5 To 9
     tys_txt = Nums4(tys) & "тисяч "
 End Select
 
 If dectys = 0 And tys = 0 And sottys <> 0 Then sottys_txt = sottys_txt & " тисяч "
 
eee:
 sot_txt = Nums3(sot)
 
 '우리는 수십 가지를 확인합니다 
 Select Case dec
   Case 1
     ed_txt = Nums5(ed)
     GoTo rrr
   Case 2 To 9
     dec_txt = Nums2(dec)
 End Select
  
 ed_txt = Nums0(ed)

rrr:
 '최종 라인을 형성하다 
 SUMINWORDS = bil_txt & sotmil_txt & decmil_txt & mil_txt & sottys_txt & dectys_txt _
 & tys_txt & sot_txt & dec_txt & ed_txt & curr & " " & Round((n - Fix(n)) * 100) & " " & kop

 If curr = "" Then
   SUMINWORDS = bil_txt & sotmil_txt & decmil_txt & mil_txt & sottys_txt & dectys_txt _
 & tys_txt & sot_txt & dec_txt & ed_txt
 End If
 
 SUMINWORDS = UCase(Mid(SUMINWORDS, 1, 1)) + Mid(SUMINWORDS, 2)
 
End Function
  
 '자릿수 선택을 위한 보조 기능 
Private Function Class(M, I)
  Class = Int(Int(M - (10 ^ I) * Int(M / (10 ^ I))) / 10 ^ (I - 1))
End Function

파일을 저장하고 Excel로 돌아갑니다.

기능 사용

이제 함수 마법사(버튼)를 통해 일반적인 방법으로 이 책의 시트 셀에 생성된 함수를 삽입할 수 있습니다. 수식 입력줄의 사용자 정의 범주) 또는 단순히 셀에 수동으로 입력하고 합계가 있는 셀을 인수로 지정하면 됩니다. 또한 함수 매개변수에서 통화 이름(흐리브냐, 달러, 유로...)과 100분의 1 이름(페니, 센트...)을 지정할 수 있습니다.

=SUMINWORDS(텍스트; 통화; 백)

매개변수에 있는 경우 "통화" 빈 큰따옴표("")를 넣으면 합계가 정수로 출력됩니다.

주제에 관한 기사: