Excelで数値を扱う際、公式文書やわかりやすさを考慮して、数値と文字の両方で表示する必要がある場合があります。しかし、Excelにはこのための組み込み機能が用意されておらず、特にインドルピーには対応していません。そのため、複雑な数式や外部ツールを使用したり、手作業で処理したりすることが多くなります。
このガイドでは、Excelを使用して数値をインドルピーの文字列に変換する簡単な方法をステップバイステップで説明します。
Excelで数値をインドルピーの文字列に変換する2つの簡単な方法:
もちろん、まず何よりも適切な Microsoft Excelのダウンロード が必要です!
方法1:VBAコードを使用して数値をインドルピーの文字列に変換する
VBAコードを使用して数値をインドルピーの文字列に変換する前に、VBA機能を開くためにリボンに「開発」タブを追加する必要がある場合があります。
Excelで「開発」タブを有効にする手順は次のとおりです:
ステップ1:変換したい数値が含まれているExcelスプレッドシートを開きます。

ステップ2:「ファイル」をクリックし、リストから「オプション」を選択します。

ステップ3:Excelのオプションで「リボンのユーザー設定」を選択します。

ステップ4:「コマンドの選択」オプションで「すべてのタブ」を選択します。

ステップ5:リストから「開発」を見つけて「追加」をクリックします。

ステップ6:「OK」をクリックします。

次に、VBAコードを使用して数値をインドルピーの文字列に変換する手順を示します:
ステップ1:変換したい数値が含まれているExcelスプレッドシートを開きます。

ステップ2:「開発」タブをクリックします。このタブが表示されていない場合は、上記の手順に従って有効にしてください。

ステップ3:「Visual Basic」をクリックするか、キーボードショートカット「Alt + F11」を使用します。

ステップ4:「挿入」をクリックし、「標準モジュール」を選択します。

ステップ5:参照用に提供されているVBAコードを貼り付けます。
Public Function RupeeFormat(SNum As String) 'Updateby Extendoffice Dim xDPInt As Integer Dim xArrPlace As Variant Dim xRStr_Paisas As String Dim xNumStr As String Dim xF As Integer Dim xTemp As String Dim xStrTemp As String Dim xRStr As String Dim xLp As Integer xArrPlace = Array("", "", " Thousand ", " Lacs ", " Crores ", " Trillion ", "", "", "", "") On Error Resume Next If SNum = "" Then RupeeFormat = "" Exit Function End If xNumStr = Trim(str(SNum)) If xNumStr = "" Then RupeeFormat = "" Exit Function End If xRStr = "" xLp = 0 If (xNumStr > 999999999.99) Then RupeeFormat = "Digit excced Maximum limit" Exit Function End If xDPInt = InStr(xNumStr, ".") If xDPInt > 0 Then If (Len(xNumStr) - xDPInt) = 1 Then xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1) & "0", 2)) ElseIf (Len(xNumStr) - xDPInt) > 1 Then xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1), 2)) End If xNumStr = Trim(Left(xNumStr, xDPInt - 1)) End If xF = 1 Do While xNumStr <> "" If (xF >= 2) Then xTemp = Right(xNumStr, 2) Else If (Len(xNumStr) = 2) Then xTemp = Right(xNumStr, 2) ElseIf (Len(xNumStr) = 1) Then xTemp = Right(xNumStr, 1) Else xTemp = Right(xNumStr, 3) End If End If xStrTemp = "" If Val(xTemp) > 99 Then xStrTemp = RupeeFormat_GetH(Right(xTemp, 3), xLp) If Right(Trim(xStrTemp), 3) <> "Lac" Then xLp = xLp + 1 End If ElseIf Val(xTemp) <= 99="" and="" val=""> 9 Then xStrTemp = RupeeFormat_GetT(Right(xTemp, 2)) ElseIf Val(xTemp) < 10 Then xStrTemp = RupeeFormat_GetD(Right(xTemp, 2)) End If If xStrTemp <> "" Then xRStr = xStrTemp & xArrPlace(xF) & xRStr End If If xF = 2 Then If Len(xNumStr) = 1 Then xNumStr = "" Else xNumStr = Left(xNumStr, Len(xNumStr) - 2) End If ElseIf xF = 3 Then If Len(xNumStr) >= 3 Then xNumStr = Left(xNumStr, Len(xNumStr) - 2) Else xNumStr = "" End If ElseIf xF = 4 Then xNumStr = "" Else If Len(xNumStr) <= 2="" then=""> xNumStr = "" Else xNumStr = Left(xNumStr, Len(xNumStr) - 3) End If End If xF = xF + 1 Loop If xRStr = "" Then xRStr = "No Rupees" Else xRStr = " Rupees " & xRStr End If If xRStr_Paisas <> "" Then xRStr_Paisas = " and " & xRStr_Paisas & " Paisas" End If RupeeFormat = xRStr & xRStr_Paisas & " Only" End Function Function RupeeFormat_GetH(xStrH As String, xLp As Integer) Dim xRStr As String If Val(xStrH) < 1 Then RupeeFormat_GetH = "" Exit Function Else xStrH = Right("000" & xStrH, 3) If Mid(xStrH, 1, 1) <> "0" Then If (xLp > 0) Then xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Lac " Else xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Hundred " End If End If If Mid(xStrH, 2, 1) <> "0" Then xRStr = xRStr & RupeeFormat_GetT(Mid(xStrH, 2)) Else xRStr = xRStr & RupeeFormat_GetD(Mid(xStrH, 3)) End If End If RupeeFormat_GetH = xRStr End Function Function RupeeFormat_GetT(xTStr As String) Dim xTArr1 As Variant Dim xTArr2 As Variant Dim xRStr As String xTArr1 = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen") xTArr2 = Array("", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety") Result = "" If Val(Left(xTStr, 1)) = 1 Then xRStr = xTArr1(Val(Mid(xTStr, 2, 1))) Else If Val(Left(xTStr, 1)) > 0 Then xRStr = xTArr2(Val(Left(xTStr, 1)) - 1) End If xRStr = xRStr & RupeeFormat_GetD(Right(xTStr, 1)) End If RupeeFormat_GetT = xRStr End Function Function RupeeFormat_GetD(xDStr As String) Dim xArr_1() As Variant xArr_1 = Array(" One", " Two", " Three", " Four", " Five", " Six", " Seven", " Eight", " Nine", "") If Val(xDStr) > 0 Then RupeeFormat_GetD = xArr_1(Val(xDStr) - 1) Else RupeeFormat_GetD = "" End If End Function |
|---|

ステップ5:保存(Ctrl + S)し、VBAエディタを閉じます。保存する際は「Excel マクロ有効ブック」を選択します。

ステップ6:結果を表示させたいセルに数式「=RupeeFormat(対象セル)」を入力し、Enterキーを押します。

ステップ7:結果が表示されます。下にドラッグして、他のセルにも数式を適用します。

選択した範囲内の数値がインドルピーの文字列に変換されます。
方法2:Excelで数値をインドルピーの文字列に変換する(一般的な方法)
Excel内で数値をインドルピーの文字列に変換する一般的な方法を学びましょう。これは、簿記用の請求書を作成する際に便利な手順です。
ステップ1:変換したい数値が含まれているExcelスプレッドシートを開きます。

ステップ2:シート名を右クリックし、「コードの表示」を選択してVBAアプリケーションを開きます。これはExcelでのデータ分析にも役立ちます。

ステップ3:「挿入」をクリックし、「標準モジュール」を選択します。

ステップ4:参照用に提供されているVBAコードを貼り付けます。
Public Function RupeeFormat(SNum As String) 'Update By Nirmal Dim xDPInt As Integer Dim xArrPlace As Variant Dim xRStr_Paisas As String Dim xNumStr As String Dim xF As Integer Dim xTemp As String Dim xStrTemp As String Dim xRStr As String Dim xLp As Integer xArrPlace = Array("", "", " Thousand ", " Lacs ", " Crores ", " Trillion ", "", "", "", "") On Error Resume Next If SNum = "" Then RupeeFormat = "" Exit Function End If xNumStr = Trim(Str(SNum)) If xNumStr = "" Then RupeeFormat = "" Exit Function End If xRStr = "" xLp = 0 If (xNumStr > 999999999.99) Then RupeeFormat = "Digit excced Maximum limit" Exit Function End If xDPInt = InStr(xNumStr, ".") If xDPInt > 0 Then If (Len(xNumStr) - xDPInt) = 1 Then xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1) & "0", 2)) ElseIf (Len(xNumStr) - xDPInt) > 1 Then xRStr_Paisas = RupeeFormat_GetT(Left(Mid(xNumStr, xDPInt + 1), 2)) End If xNumStr = Trim(Left(xNumStr, xDPInt - 1)) End If xF = 1 Do While xNumStr <> "" If (xF >= 2) Then xTemp = Right(xNumStr, 2) Else If (Len(xNumStr) = 2) Then xTemp = Right(xNumStr, 2) ElseIf (Len(xNumStr) = 1) Then xTemp = Right(xNumStr, 1) Else xTemp = Right(xNumStr, 3) End If End If xStrTemp = "" If Val(xTemp) > 99 Then xStrTemp = RupeeFormat_GetH(Right(xTemp, 3), xLp) If Right(Trim(xStrTemp), 3) <> "Lac" Then xLp = xLp + 1 End If ElseIf Val(xTemp) <= 99="" and="" val=""> 9 Then xStrTemp = RupeeFormat_GetT(Right(xTemp, 2)) ElseIf Val(xTemp) < 10 Then xStrTemp = RupeeFormat_GetD(Right(xTemp, 2)) End If If xStrTemp <> "" Then xRStr = xStrTemp & xArrPlace(xF) & xRStr End If If xF = 2 Then If Len(xNumStr) = 1 Then xNumStr = "" Else xNumStr = Left(xNumStr, Len(xNumStr) - 2) End If ElseIf xF = 3 Then If Len(xNumStr) >= 3 Then xNumStr = Left(xNumStr, Len(xNumStr) - 2) Else xNumStr = "" End If ElseIf xF = 4 Then xNumStr = "" Else If Len(xNumStr) <= 2="" then=""> xNumStr = "" Else xNumStr = Left(xNumStr, Len(xNumStr) - 3) End If End If xF = xF + 1 Loop If xRStr = "" Then xRStr = "No Rupees" Else xRStr = " Rupees " & xRStr End If If xRStr_Paisas <> "" Then xRStr_Paisas = " and " & xRStr_Paisas & " Paisas" End If RupeeFormat = xRStr & xRStr_Paisas & " Only" End Function Function RupeeFormat_GetH(xStrH As String, xLp As Integer) Dim xRStr As String If Val(xStrH) < 1 Then RupeeFormat_GetH = "" Exit Function Else xStrH = Right("000" & xStrH, 3) If Mid(xStrH, 1, 1) <> "0" Then If (xLp > 0) Then xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Lac " Else xRStr = RupeeFormat_GetD(Mid(xStrH, 1, 1)) & " Hundred " End If End If If Mid(xStrH, 2, 1) <> "0" Then xRStr = xRStr & RupeeFormat_GetT(Mid(xStrH, 2)) Else xRStr = xRStr & RupeeFormat_GetD(Mid(xStrH, 3)) End If End If RupeeFormat_GetH = xRStr End Function Function RupeeFormat_GetT(xTStr As String) Dim xTArr1 As Variant Dim xTArr2 As Variant Dim xRStr As String xTArr1 = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen") xTArr2 = Array("", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety") Result = "" If Val(Left(xTStr, 1)) = 1 Then xRStr = xTArr1(Val(Mid(xTStr, 2, 1))) Else If Val(Left(xTStr, 1)) > 0 Then xRStr = xTArr2(Val(Left(xTStr, 1)) - 1) End If xRStr = xRStr & RupeeFormat_GetD(Right(xTStr, 1)) End If RupeeFormat_GetT = xRStr End Function Function RupeeFormat_GetD(xDStr As String) Dim xArr_1() As Variant xArr_1 = Array(" One", " Two", " Three", " Four", " Five", " Six", " Seven", " Eight", " Nine", "") If Val(xDStr) > 0 Then RupeeFormat_GetD = xArr_1(Val(xDStr) - 1) Else RupeeFormat_GetD = "" End If End Function |
|---|

ステップ5:ファイルの種類で「Excel マクロ有効ブック」を選択し、保存します。VBAエディタのウィンドウを閉じます。

ステップ6:選択したセルに数式「=RupeeFormat(対象セル)」を入力して結果を表示します。

ステップ7:選択したセルに結果が表示されたら、下にドラッグして他のセルにも数式を適用します。

選択した範囲内の数値がインドルピーの文字列に変換されます。
Microsoft Officeの無料の最適な代替ソフト - WPS Office
Microsoft Officeのほかに、もう1つのアプリを紹介します。それがWPS Officeです。では、WPSとは何でしょうか?

WPS Officeは、Microsoft Officeと互換性のある無料のオープンソースオフィススイートです。ワープロ、スプレッドシート、プレゼンテーションソフト、PDFリーダーが含まれており、ファイルの表示、編集、保存を簡単に行えます。また、オフィススイートを使用した経験がない方でも簡単に操作できます。
それだけでなく、WPS Officeは幅広い機能を提供する強力なオフィススイートでもあります。特に予算が限られている学生や企業にとって、NeoOfficeの優れた代替手段となります。
WPSの主な機能を簡単にご紹介します:
● Word、Excel、PPTを無料で使用可能。強力なPDFツールキットも搭載
● 豊富なテンプレートストア
● 履歴書アシスタント、スマートフォーム、画面録画、ファイル修復など、製品に統合された多数の便利なツールや豊富な機能
● わずか200MBの軽量設計で、パソコンのメモリをほとんど消費しません。
● Mac版のWPS Officeは非常に強力です。Microsoft Officeでは不足しがちなMacユーザーの操作体験も、WPS Officeならしっかりとカバーできます。
● オンラインドキュメント(WPS AirPage)と複数人での共同編集をサポート
● WPS Officeは、Linux、Android、iOSシステムにも対応しています。異なるシステムでWPS Office製品を使用する場合でも、同じアカウントにログインするだけで、すべてのファイルを同期できます。

WPS Officeが最適な選択肢だと感じ、ダウンロードをご希望ですか?ぜひ公式ウェブサイト(https://www.wps.com)にアクセスして、今すぐダウンロードしてください。
WPS Officeのダウンロード方法
ステップ1:WPS Officeのウェブサイト( wps.com)にアクセスします。
ステップ2:「無料ダウンロード」ボタンをクリックします。

ステップ3:WPS Officeの保存先を選択し、「保存」をクリックします。

ステップ4:ダウンロードしたWPS Officeファイルをダブルクリックし、「実行」をクリックして、画面の指示に従いインストールします。

ステップ5:完了後、WPS Officeのすべての強力な機能を活用できるようになります。
よくあるご質問(FAQ):
Q1: Excel VBAで通貨をテキストに変換するにはどうすればよいですか?
Excelで通貨をテキストに変換するには、VBA(Visual Basic for Applications)を使用します。この変換を行うには、カスタムVBAマクロを作成する必要があります。オンラインの例やコードスニペットを探すか、Excel VBAの公式ドキュメントを参照してください。
Q2: Excelで通貨の数値を文字のテキストに変換するにはどうすればよいですか?
Excelで通貨を文字に変換するには、通常、関数とカスタム書式設定を組み合わせて使用します。この方法を解説するさまざまなチュートリアルやガイドがオンラインで公開されています。
Q3: Excelで数値をインドルピーの形式にするにはどうすればよいですか?
Excelで数値をインドルピーの形式にするには、組み込みの通貨書式オプションを使用します。書式設定するセルまたは範囲を選択し、「セルの書式設定」ダイアログボックスの「表示形式」タブに移動して、「通貨」カテゴリを選択します。そこで、通貨記号として「₹ 英語(インド)」を選択できます。
Q4: Excelで数値を自動的にテキストに変換するにはどうすればよいですか?
Excelで数値をテキストに自動変換する方法はいくつかあります。TEXTやCONCATENATEなどのExcel関数を使用するか、カスタム書式設定を利用できます。また、VBAマクロを使用すれば、さらに高度な自動化も可能です。
Q5: Excelで米ドルをインドルピーに変換するにはどうすればよいですか?
Excelで米ドルをインドルピーに変換するには、Excelの関数と、為替レートを提供するWebサービスまたは外部データソースを組み合わせて使用します。また、為替レートを取得した後、Excelの「通貨」書式を使用してインドルピーで金額を表示することもできます。
Q5. Excel Onlineを使用して作業を効率化したいですか?
クラウドでの作業を好む場合、Excel Onlineでも同様の強力な機能を利用でき、どこからでもデータの管理やクレンジングが行えます。Excel Onlineでも、データの左側または右側から文字を削除する同じ関数を使用できるため、柔軟性を求める方や、デスクトップ版のExcelにアクセスできない方にとって最適な選択肢です。
まとめ:
VBAコードまたは一般的な方法を使用して、Excel内で数値の金額をインドルピーの文字に簡単に変換する方法を解説しました。まず、Excelの「開発」タブを有効にし、提供されたVBAコードを追加して、「=RupeeFormat(対象セル)」という数式を使用します。
別の方法として、シート名を右クリックしてVBAにアクセスし、モジュールを挿入してコードを貼り付け、同じ数式を使用することもできます。これらの使いやすい方法は、Microsoft Officeの無料代替ソフトであるWPS Officeとも互換性があり、正確でプロフェッショナルなドキュメントの書式設定を簡単に行うことができます。





