Wednesday, May 16, 2012

Scheme where MLA can spend government money:
गॊदाम‌, गली, नाली, सामुदायिक भवन‌, बस पडाव, यात्री शेड, सार्वजनिक पुस्तकालय‌, नदी‍‍‍‍-तालाब‌ घाट निर्माण, हाट-मॆला विकास‌, कला मन्च-खॆल मैदान का विकास‌, सार्वजनिक चबूतरा का निर्माण, पन्चायत भवन‌ निर्माण, आगनबाडी कॆन्द्न निर्माण, चापाकल

Monday, May 7, 2012

Number to Words in Excel

Follow this link http://www.accountinghead.com/index.php/how-to-convert-number-to-text-in-excel-2003-2007/

1) Open excel then Press Alt+F11 to start visual basic editor

2) In visulal basic editor click insert menu then open module

3) copy the script and paste in opened module window, on the left side pane click on This work book
 

Number to Words in c#


//Below content is copied some other sites
//--------------------------------------------
//First Example
//-------------------------------------------
public static string NumberToWords(int number)
        {
            if (number == 0)
                return "zero";

            if (number < 0)
                return "minus " + NumberToWords(Math.Abs(number));

            string words = "";

            if ((number / 10000000) > 0)
            {
                words += NumberToWords(number / 10000000) + " crore ";
                number %= 10000000;
            }

            if ((number / 100000) > 0)
            {
                words += NumberToWords(number / 100000) + " lakh ";
                number %= 100000;
            }

            if ((number / 1000) > 0)
            {
                words += NumberToWords(number / 1000) + " thousand ";
                number %= 1000;
            }

            if ((number / 100) > 0)
            {
                words += NumberToWords(number / 100) + " hundred ";
                number %= 100;
            }

            if (number > 0)
            {
                if (words != "")
                    words += "and ";

                string[] unitsMap = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" };
                string[] tensMap = { "zero", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" };

                if (number < 20)
                    words += unitsMap[number];
                else
                {
                    words += tensMap[number / 10];
                    if ((number % 10) > 0)
                        words += "-" + unitsMap[number % 10];
                }
            }

            return words;
        }

 //-------------------------------------------------------------------
 .// Second Example
 //------------------------------------------------------------
private void button1_Click(object sender, EventArgs e)
        {
            textBox2.Text = changeCurrencyToWords(textBox1.Text);
            if (textBox2.Text.Contains("and Crore"))
            {
                textBox2.Text = textBox2.Text.Replace("and Crore", "");
            }
            if(textBox2.Text.Contains("and Lakh"))
            {
                textBox2.Text=textBox2.Text.Replace(" and Lakh", "");
            }
            if (textBox2.Text.Contains("and Thousand"))
            {
                textBox2.Text=textBox2.Text.Replace(" and Thousand", "");
            }
            if (textBox2.Text.Contains("and Hundred"))
            {
                textBox2.Text = textBox2.Text.Replace(" and Hundred", "");
            }
        }
       

        public String changeNumericToWords(double numb)
        {
            String num = numb.ToString();
            return changeToWords(num, false);
        }
        public String changeCurrencyToWords(String numb)
        {
            return changeToWords(numb, true);
        }
        public String changeNumericToWords(String numb)
        {
            return changeToWords(numb, false);
        }
        public String changeCurrencyToWords(double numb)
        {
            return changeToWords(numb.ToString(), true);
        }
        private String changeToWords(String numb, bool isCurrency)
        {
            String val = "", wholeNo = numb, points = "", andStr = "", pointStr = "";
            String endStr = (isCurrency) ? ("Rupees Only") : ("");
            try
            {
                int decimalPlace = numb.IndexOf(".");
                if (decimalPlace > 0)
                {
                    wholeNo = numb.Substring(0, decimalPlace);
                    points = numb.Substring(decimalPlace + 1);
                    if (Convert.ToInt32(points) > 0)
                    {
                        andStr = (isCurrency) ? ("and") : ("point");// just to separate whole numbers from points/cents
                        endStr = (isCurrency) ? ("Paisa " + endStr) : ("");
                        pointStr = translateCents(points);
                    }
                }
                val = String.Format("{0} {1}{2} {3}", translateWholeNumber(wholeNo).Trim(), andStr, pointStr, endStr);
            }
            catch { ;}
            return val;
        }
        private String translateWholeNumber(String number)
        {
            string word = "";
            try
            {
                bool beginsZero = false;//tests for 0XX
                bool isDone = false;//test if already translated
                double dblAmt = (Convert.ToDouble(number));
                //if ((dblAmt > 0) && number.StartsWith("0"))
                if (dblAmt > 0)
                {//test for zero or digit zero in a nuemric
                beginsZero = number.StartsWith("0");
                int numDigits = number.Length;
                int pos = 0;//store digit grouping
                String place = "";//digit grouping name:hundres,thousand,etc...
                switch (numDigits)
                {
                    case 1://ones' range
                    word = ones(number);
                    isDone = true;
                    break;
                    case 2://tens' range
                    word = tens(number);
                    isDone = true;
                    break;
                    case 3://hundreds' range
                    pos = (numDigits % 3) + 1;
                    place = " Hundred ";
                    break;
                    case 4://thousands' range
                    case 5:
                    pos = (numDigits % 4) + 1;
                    place = " Thousand ";
                    break;
                    case 6://lakh' range
                    case 7:
                    pos = (numDigits % 6) + 1;
                    place = " Lakh ";
                    break;
                    case 8://Crore' range
                    case 9:
                    pos = (numDigits % 8) + 1;
                    place = " Crore ";
                    break;
                    case 10://Arab's range
                   
                    //add extra case options for anything above Billion...
                    default:
                    isDone = true;
                    break;
                }
                if (!isDone)
                {
                    //if transalation is not done, continue...(Recursion comes in now!!)
                    word = translateWholeNumber(number.Substring(0, pos)) + place + translateWholeNumber(number.Substring(pos));
                    //check for trailing zeros
                    if (beginsZero)
                        word = " and " + word.Trim();
                }
                //ignore digit grouping names
                if (word.Trim().Equals(place.Trim()))
                    word = "";
                }
            }
            catch { ;}
            return word.Trim();
        }
        private String tens(String digit)
        {
            int digt = Convert.ToInt32(digit);
            String name = null;
            switch (digt)
            {
                case 10:
                name = "Ten";
                break;
                case 11:
                name = "Eleven";
                break;
                case 12:
                name = "Twelve";
                break;
                case 13:
                name = "Thirteen";
                break;
                case 14:
                name = "Fourteen";
                break;
                case 15:
                name = "Fifteen";
                break;
                case 16:
                name = "Sixteen";
                break;
                case 17:
                name = "Seventeen";
                break;
                case 18:
                name = "Eighteen";
                break;
                case 19:
                name = "Nineteen";
                break;
                case 20:
                name = "Twenty";
                break;
                case 30:
                name = "Thirty";
                break;
                case 40:
                name = "Fourty";
                break;
                case 50:
                name = "Fifty";
                break;
                case 60:
                name = "Sixty";
                break;
                case 70:
                name = "Seventy";
                break;
                case 80:
                name = "Eighty";
                break;
                case 90:
                name = "Ninety";
                break;
                default:
                if (digt > 0)
                {
                    name = tens(digit.Substring(0, 1) + "0") + " " + ones(digit.Substring(1));
                }
                break;
            }
            return name;
        }
        private String ones(String digit)
        {
            int digt = Convert.ToInt32(digit);
            String name = "";
            switch (digt)
            {
                case 1:
                name = "One";
                break;
                case 2:
                name = "Two";
                break;
                case 3:
                name = "Three";
                break;
                case 4:
                name = "Four";
                break;
                case 5:
                name = "Five";
                break;
                case 6:
                name = "Six";
                break;
                case 7:
                name = "Seven";
                break;
                case 8:
                name = "Eight";
                break;
                case 9:
                name = "Nine";
                break;
            }
            return name;
        }
        private String translateCents(String cents)
        {
            String cts = "", digit = "", engOne = "";
            for (int i = 0; i < cents.Length; i++)
            {
                digit = cents[i].ToString();
                if (digit.Equals("0"))
                {
                    engOne = "Zero";
                }
                else
                {
                    engOne = ones(digit);
                }
                cts += " " + engOne;
            }
            return cts;
        }