' Format a value for a dollar ' expN1 Value ' expC1 Separator Public Function GetFormatValueDollar(ByVal tnValue As Double, ByVal tcSeparator As String) As String Dim lcValue As String = "" Dim loCultureInfo As CultureInfo = Nothing ' Based on the language Select Case nLanguage ' English Case 1 loCultureInfo = oApp.oCultureInfoEnglish ' French Case 2 loCultureInfo = oApp.oCultureInfoFrench ' Spanish Case 3 loCultureInfo = oApp.oCultureInfoSpanish ' Portuguese Case 4 loCultureInfo = oApp.oCultureInfoPortuguese End Select loCultureInfo.NumberFormat.CurrencyDecimalSeparator = "." loCultureInfo.NumberFormat.CurrencyGroupSeparator = tcSeparator ' If we format the dollar sign as per the language If oApp.lFormatDollarAsPerTheLanguage Then ' Based on the language Select Case nLanguage ' English Case 1 ' French Case 2 loCultureInfo.NumberFormat.CurrencyPositivePattern = 1 ' Spanish Case 3 ' Portuguese Case 4 End Select End If lcValue = tnValue.ToString("C", loCultureInfo) Return lcValue End FunctionIn there, I am using the culture info for the display of the dollar sign. So, for the other method, I simply followed the same approach. I believe this suggestion came from here BTW.