Excel non fornisce alcuna funzione predefinita che converta un numero o un importo in parole in rupie indiane o in qualsiasi valuta. Ma ciò non significa che non possiamo convertire il numero in rupia indiana. Possiamo creare una formula Excel personalizzata per convertire il numero in parole in rupie indiane. Ho creato questa funzione personalizzata per convertire il numero in parole in termini di rupie indiane. Puoi scaricare il file macro qui sotto. Ho menzionato il codice di seguito e spiegato un po ', in modo che tu possa apportare modifiche secondo le tue esigenze.
Funzione Excel per convertire il numero in parole in rupie indiane
Quindi usa questa funzione per convertire l'importo o il numero di 10 cifre o meno in parole o rupie. Ho chiamato questa funzione NUM_TO_IND_RUPEE_WORD. La sintassi di questa funzione è:
=NUM_TO_IND_RUPEE_WORD(numero) |
Puoi scaricare il file macro di lavoro in basso:
Numero di parole rupia indiana
Ora il codice della funzione è menzionato di seguito.
Questo codice è suddiviso in quattro singole funzioni. La funzione principale è NUM_TO_IND_RUPEE_WORD. E altre tre funzioni GetHunderds(), GetTens() e GetDigits stanno aiutando la funzione che aiuta la funzione principale a formare la stringa.
Funzione NUM_TO_IND_RUPEE_WORD(ByVal MyNumber, Optional incRupees As Boolean = True) Dim Crores, Lakhs, Rupees, Paise, Temp Dim DecimalPlace As Long, Count As Long Dim myLakhs, myCrores ReDim Place(9) As String Place(2) = " Thousand " : Luogo(3) = " Milione " Luogo(4) = " Miliardo ": Luogo(5) = " Trilione " ' Rappresentazione in forma di stringa dell'importo. MyNumber = Trim(Str(MyNumber)) ' Posizione della posizione decimale 0 se nessuna. DecimalPlace = InStr(MyNumber, ".") ' Converte Paise e imposta MyNumber sull'importo in rupie. If DecimalPlace > 0 Then Paise = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)) MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) End If myCrores = MyNumber \ 10000000 myLakhs = ( MyNumber - myCrores * 10000000) \ 100000 MyNumber = MyNumber - myCrores * 10000000 - myLakhs * 100000 Count = 1 Do While myCrores "" Temp = GetHundreds(Right(myCrores, 3)) If Temp "" Then Crores = Temp & Place(Count ) & Crores If Len(myCrores) > 3 Then myCrores = Left(myCrores, Len(myCrores) - 3) Else myCrores = "" End If Count = Count + 1 Loop Count = 1 Do While myLakhs "" Temp = GetHundreds(Right (myLakhs, 3)) If Temp "" Then Lakhs = Temp & Place(Count) & Lakhs If Len(myLakhs) > 3 Then myLakhs = Left(myLakhs, Len(myLakhs) - 3) Else myLakhs = "" End If Count = Count + 1 Loop Count = 1 Do While MyNumber "" Temp = GetHundreds(Right(MyNumber, 3)) If Temp "" Then Rupees = Temp & Place(Count) & Rupie If Len(MyNumber) > 3 Then MyNumber = Left (MyNumber, Len(MyNumber) - 3) Else MyNumber = "" End If Count = C ount + 1 Loop Select Case Crores Case "": Crores = "" Case "One": Crores = " One Crore " Case Else: Crores = Crores & " Crores " End Select Select Case Lakhs Case "": Lakhs = "" Case "Uno": Lakhs = " One Lakh " Case Else: Lakhs = Lakhs & " Lakhs " End Select Select Case Rupees Case "": Rupees = "Zero " Case "One": Rupie = "One " Case Else: Rupie = Rupie Fine Select Seleziona Case Paise Case "": Paise = " e Paise Zero Only " Case "One": Paise = " e Paise One Only " Case Else: Paise = " e Paise " & Paise & " Only " End Select 'creando il stringa di parole per tradurre il numero in parole NUM_TO_IND_RUPEE_WORD = IIf(incRupees, "Rupees ", "") & Crores & _ Lakhs & Rupees & Paise End Funzione ' Converte un numero da 100-999 in testo Funzione GetHundreds(ByVal MyNumber) Dim Result As String If Val(MyNumber) = 0 Then Exit Function MyNumber = Right("000" & MyNumber, 3) ' Converte le centinaia. If Mid(MyNumber, 1, 1) "0" Then Result = GetDigit(Mid(MyNumber, 1, 1)) & "Hundred" End If ' Converti le decine e le unità. If Mid(MyNumber, 2, 1) "0" Then Risultato = Risultato & GetTens(Mid(MyNumber, 2)) Else Risultato = Risultato & OttieniDigit(Mid(MyNumber, 3)) End If GetHundreds = Risultato End Function ' Converte un numero da 10 a 99 nel testo. Function GetTens(TensText) Dim Result As String Result = "" ' Annulla il valore della funzione temporanea. If Val(Left(TensText, 1)) = 1 Then ' If valore compreso tra 10-19… Selezionare Case Val(TensText) Caso 10: Risultato = "Dieci" Caso 11: Risultato = "Undici" Caso 12: Risultato = "Dodici Caso 13: Risultato = "Tredici" Caso 14: Risultato = "Quattordici" Caso 15: Risultato = "Quindici" Caso 16: Risultato = "Sedici" Caso 17: Risultato = "Diciotto" Caso 18: Risultato = "Diciotto" Caso 19: Risultato = "Nineteen" Case Else End Select Else ' If value between 20-99… Select Case Val(Left(TensText, 1)) Caso 2: Risultato = "Twenty " Case 3: Risultato = "Thirty " Case 4: Risultato = "Quaranta " Caso 5: Risultato = "Cinquanta" Caso 6: Risultato = "Sessanta" Caso 7: Risultato = "Settanta" Caso 8: Risultato = "Ottanta" Caso 9: Risultato = "Ninety " Caso Altrimenti Fine Seleziona Risultato = Risultato & GetDigit _ (Right(TensText, 1)) ' Recupera il posto. End If GetTens = Risultato End Function ' Converte un numero da 1 a 9 in testo. Funzione GetDigit(Digit) Select Case Val(Digit) Caso 1: GetDigit = "Uno" Caso 2: GetDigit = "Due" Caso 3: GetDigit = "Tre" Caso 4: GetDigit = "Quattro" Caso 5: GetDigit = "Cinque " Caso 6: GetDigit = "Sei" Caso 7: GetDigit = "Sette" Caso 8: GetDigit = "Otto" Caso 9: GetDigit = "Nove" Case Else: GetDigit = "" Fine Seleziona Fine Funzione
Il codice della funzione è lungo ma di facile comprensione.
Per utilizzare questo codice, inserisci un modulo in VBE e copialo incollandolo. E la funzione è pronta per essere utilizzata direttamente sul foglio. Converte il numero in parole, in particolare nel formato della rupia indiana.
Quindi sì ragazzi, ecco come potete usare una funzione personalizzata in Excel per convertire il numero in parole. Spero che questo sia utile. Se hai dei dubbi su questo articolo o su qualsiasi altra funzione, chiedi nella sezione commenti qui sotto.
Crea la funzione VBA per restituire l'array| Per restituire un array utilizzando una funzione personalizzata in Excel, utilizziamo una sintassi leggermente diversa per scrivere la funzione personalizzata. Questa funzione restituisce un array di valori invece di un solo valore.
Matrici nella formula di Excel|Gli array sono una raccolta di valori dello stesso tipo in ogni linguaggio tecnico. In Excel è lo stesso ma trattato in modo leggermente diverso rispetto ad altri linguaggi di programmazione…
Come creare una funzione definita dall'utente tramite VBA| Scopri come creare funzioni definite dall'utente in Excel.
Utilizzo di una funzione definita dall'utente (UDF) da un'altra cartella di lavoro utilizzando VBA in Microsoft Excel| Utilizzare la funzione definita dall'utente in un'altra cartella di lavoro di Excel.
Restituisce i valori di errore dalle funzioni definite dall'utente utilizzando VBA in Microsoft Excel| Scopri come restituire valori di errore da una funzione definita dall'utente.
Articoli popolari:
50 scorciatoie di Excel per aumentare la produttività | Diventa più veloce nel tuo compito. Queste 50 scorciatoie ti faranno lavorare ancora più velocemente su Excel.
Come utilizzare la funzione CERCA.VERT di Excel| Questa è una delle funzioni più utilizzate e popolari di Excel che viene utilizzata per cercare il valore da diversi intervalli e fogli.
Come usare Excel Funzione CONTA.SE| Conta i valori con le condizioni usando questa fantastica funzione. Non è necessario filtrare i dati per contare un valore specifico. La funzione Countif è essenziale per preparare la tua dashboard.
Come utilizzare la funzione SOMMA.SE in Excel | Questa è un'altra funzione essenziale della dashboard. Questo ti aiuta a riassumere i valori su condizioni specifiche.