Ja tev uzņēmumā bieži sanāk strādāt ar Excel datubāzi un nepieciešams pārvērst summas latviešu valodā, tad tev būs noderīga mūsu izstrādātā funkcija summas pārvēršanai tekstā.
Lai to izdarītu, tev būs nepieciešams
- atvērt Excel -> Developer šķirkli -> Visual basic šķirkli
- noklikšķināt uz izvēlnes Insert -> Module
Kreisajā malā parādīsies "Module1". Ar dubultklikšķi jāatver šis Module1 un jāiekopē zemāk norādītais VisualBasic kods.
Function EuroSummaVardiem(summa) As String
Dim skaitli(20)
Dim skaitli_desmitiem(20)
Dim work_summa As Double
Dim tukstosi, simti, desmiti As Integer
Dim Atbilde As String
Dim tmp As String
skaitli_desmitiem(1) = "vien"
skaitli_desmitiem(2) = "div"
skaitli_desmitiem(3) = "trīs"
skaitli_desmitiem(4) = "četr"
skaitli_desmitiem(5) = "piec"
skaitli_desmitiem(6) = "seš"
skaitli_desmitiem(7) = "septiņ"
skaitli_desmitiem(8) = "astoņ"
skaitli_desmitiem(9) = "deviņ"
skaitli(1) = "viens"
skaitli(2) = "divi"
skaitli(3) = "trīs"
skaitli(4) = "četri"
skaitli(5) = "pieci"
skaitli(6) = "seši"
skaitli(7) = "septiņi"
skaitli(8) = "astoņi"
skaitli(9) = "deviņi"
skaitli(10) = "desmit"
skaitli(11) = "vienpadsmit"
skaitli(12) = "divpadsmit"
skaitli(13) = "trīpadsmit"
skaitli(14) = "četrpadsmit"
skaitli(15) = "piecpadsmit"
skaitli(16) = "sešpadsmit"
skaitli(17) = "septiņpadsmit"
skaitli(18) = "astoņpadsmit"
skaitli(19) = "deviņpadsmit"
Atbilde = ""
work_summa = summa
tukstosi = Int(work_summa / 1000)
work_summa = work_summa - (tukstosi * 1000)
santimi = Round((summa - Int(summa)) * 100)
work_summa_tukstosi = summa
tukstosu_simti = Int(work_summa_tukstosi / 100000)
work_summa_tukstosi = work_summa_tukstosi - (tukstosu_simti * 100000)
tukstosu_desmiti = Int((work_summa_tukstosi) / 1000)
tukstosu_desmiti2 = Int(tukstosu_desmiti / 10)
tukstosu_desmiti_vieni = tukstosu_desmiti - Int(tukstosu_desmiti2 * 10)
If (tukstosu_simti > 0) Then
If (tukstosu_simti = 1) Then
If (tukstosu_desmiti = 0) Then
Atbilde = Atbilde & "simts "
Else
Atbilde = Atbilde & "simtu"
End If
Else
Atbilde = Atbilde & skaitli(tukstosu_simti) & " simti "
End If
End If
If (tukstosu_desmiti > 0) Then
If (tukstosu_desmiti > 19) Then
Atbilde = Atbilde & skaitli_desmitiem(tukstosu_desmiti2) & "desmit" & skaitli(tukstosu_desmiti_vieni) & " tūkstoši "
Else
If (tukstosu_desmiti = 1) Then
Atbilde = Atbilde & skaitli(tukstosu_desmiti) & " tūkstotis "
Else
Atbilde = Atbilde & skaitli(tukstosu_desmiti) & " tūkstoši "
End If
End If
Else
If tukstosu_simti > 0 Then
Atbilde = Atbilde & "tūkstoši "
End If
End If
simti = Int(work_summa / 100)
work_summa = work_summa - Int(simti * 100)
If (simti > 0) Then
If (simti = 1) Then
Atbilde = Atbilde & skaitli(simti) & " simts "
Else
Atbilde = Atbilde & skaitli(simti) & " simti "
End If
End If
If (work_summa > 10) Then
desmiti = Int(work_summa)
desmiti2 = Int(desmiti / 10)
desmiti_vieni = desmiti - (desmiti2 * 10)
work_summa = work_summa - desmiti
If (desmiti > 0) Then
If (desmiti > 19) Then
Atbilde = Atbilde & skaitli_desmitiem(desmiti2) & "desmit "
If (desmiti_vieni > 0) Then
Atbilde = Atbilde & skaitli(desmiti_vieni)
End If
Else
Atbilde = Atbilde & skaitli(desmiti)
End If
End If
Else
desmiti = 0
desmiti_vieni = Int(work_summa)
work_summa = work_summa - desmiti_vieni
If (desmiti_vieni = 1) Then
Atbilde = Atbilde & skaitli(desmiti_vieni)
Else
Atbilde = Atbilde & skaitli(desmiti_vieni)
End If
End If
'nosakām euro
currency2 = "euro"
If (desmiti_vieni = 1 And desmiti <> 11) Then
currency2 = "euro"
End If
'nosakām centi vai cents
currency3 = "centi"
tmp = santimi
If (Right(tmp, 1) = "1" And Right(tmp, 2) <> "11") Then currency3 = "cents"
santimi = Format(santimi, "00")
Atbilde = Trim(Atbilde)
Atbilde = Atbilde & " " & currency2 & ", " & santimi & " " & currency3
EuroSummaVardiem = Atbilde
End Function
Pēc tam varat šo funkciju lietot jebkur savā excel failā, attiecīgajā šūnā, kur nepieciešams norādīt summu pārvērstu tekstuālā vērtībā, ierakstot šādu formulu - =EuroSummaVardiem(A2), kur A2 ir norāde uz šūnu ar ciparisko vērtību
Ja Jums ir nepieciešams izstrādāt kādu citu risinājumu Excelī, dodiet mums ziņu. Tāpat piedāvājam izstrādāt dažādas sarežģītības interneta projektus.
Ja Jums ir radušies jautājumi, rakstiet mums: