Вопрос : SpellNumber

Почему когда I '' SpellNumber (A1) '' сделает оно ввести «И» перед номерами больш чем 10.000.000? Оно потому что клетками, котор оно преобразовывает будут форма валюты?? И почему, если там пенниа задействован, то оно вводит «и» в строчную букву? Помощь! Thanks class=

Ответ : SpellNumber

Опять все Кодий включенно и 2 починки,
пробел возвращает пробел
1 возвращает одно единственное число pund т.е.

Крис
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
Spellnumber функции (numberRange как ряд)
    Если numberRange = "" после этого
        spellnumber = ""
    Еще
        spellnumber = Currency2Words (numberRange, «фунты», «пенниа»)
    Закончитесь если
Закончите функцию

Функция Currency2Words (ByVal MyNumber, опционные strUnits, опционное strFrac)
Тусклый Temp
Тусклые блоки
Тусклое Frac
Тусклое DecimalPlace
Затемните отсчет

    Если strUnits IsMissing (strUnits) после этого = «доллары», то
    Если strFrac IsMissing (strFrac) после этого = «центы», то
    Место ReDim (9) как шнур
    Установьте (2) = «тысяча»
    Установьте (3) = «миллион»
    Установьте (4) = «миллиард»
    Установьте (5) = «триллион»

         
    MyNumber = уравновешивание (str (MyNumber))
    DecimalPlace = InStr (MyNumber, «.")
    Если DecimalPlace > 0 после этого
        Temp = вышел (средний (MyNumber, DecimalPlace + 1) & «00», 2)
        Frac = ConvertTens (Temp)
        MyNumber = уравновешивание (левое (MyNumber, DecimalPlace - 1))
    Закончитесь если

    Отсчет = 1
    Сделайте пока "" <> MyNumber
        Temp = ConvertHundreds (правое (MyNumber, 3))
        Если блоки <> = Temp & место (отсчет) & блоки "" Temp после этого
        Если Len (MyNumber) > 3 после этого
          MyNumber = о (MyNumber, Len (MyNumber) - 3)
       Еще
          MyNumber = ""
       Закончитесь если
       Отсчет = отсчет + 1
    Петля

    Блоки = уравновешивание (блоки) & ««
    Выберите уравновешивание случая (блоки)
       Покрывайте ""
          Блоки = "" '«не» & strUnits
       Случай «одно»
          Блоки = «одно» & вышли (strUnits, Len (strUnits) - 1)
       Случай еще
          Блоки = блоки & strUnits
    Конец отборный
    Выберите уравновешивание случая (Frac)
       Покрывайте ""
          Frac = "" '«и не» & strFrac
       Случай «одно»
          Если блоки = "" после этого
            Frac = Frac & ««& strFrac
          Еще
            Frac = «и одно» & вышли (strFrac, Len (strFrac) - 1)
        Закончитесь если
       Покрывайте еще
          Если блоки = "" после этого
            Frac = Frac & ««& strFrac
          Еще
            Frac = «и» & Frac & ««& strFrac
          Закончитесь если
    Закончите отборное

    Если блоки = "" после этого
        Currency2Words = Frac
    Еще
        Currency2Words = блоки & Frac
    Закончитесь если
    Currency2Words = заменяют ть (уравновешивание (Currency2Words), «  «,» ")
Функция конца

Приватная функция ConvertHundreds (ByVal MyNumber)
Тусклый результат как шнур

    Если Val (MyNumber) = 0 после этого выходит функция
    MyNumber = право («000» & MyNumber, 3)

    'Сотниы
    Если о, то (MyNumber, 1) <> «0» после этого
       Результат = ое ConvertDigit ((MyNumber, 1)) & «100»
    Закончитесь если

    '10
    Если средний, то (MyNumber, 2, 1) <> «0» после этого
       Результат = результат & ConvertTens (средние (MyNumber, 2))
    Еще
       Результат = результат & ConvertDigit (средние (MyNumber, 3))
    Закончитесь если

    ConvertHundreds = уравновешивание (результат)
Функция конца

Приватная функция ConvertTens (ByVal MyTens)
Тусклый результат как шнур

    'Значение между 10 и 19?
    Если Val, то (ое (MyTens, 1)) = 1 после этого
        Выберите случай Val (MyTens)
            Случай 10: Результат = «10»
            Случай 11: Результат = «11»
            Случай 12: Результат = «12»
            Случай 13: Результат = «13»
            Случай 14: Результат = «14»
            Случай 15: Результат = «15»
            Случай 16: Результат = «16»
            Случай 17: Результат = «17»
            Случай 18: Результат = «18»
            Случай 19: Результат = «19»
            Случай еще
        Конец отборный
    Еще
        '. в противном случае он находится между 20 и 99.
        Выберите случай Val (вышл (MyTens, 1))
            Случай 2: Результат = «20»
            Случай 3: Результат = «30»
            Случай 4: Результат = «40»
            Случай 5: Результат = «50»
            Случай 6: Результат = «60»
            Случай 7: Результат = «70»
            Случай 8: Результат = «80»
            Случай 9: Результат = «90»
            Случай еще
        Конец отборный

        'Новообращенный одни устанавливает число.
        Результат = результат & ConvertDigit (правые (MyTens, 1))
    Закончитесь если

    ConvertTens = результат
Функция конца

Приватная функция ConvertDigit (ByVal MyDigit)
    Выберите случай Val (MyDigit)
        Случай 1: ConvertDigit = «одно»
        Случай 2: ConvertDigit = «2»
        Случай 3: ConvertDigit = «3»
        Случай 4: ConvertDigit = «4»
        Случай 5: ConvertDigit = «5»
        Случай 6: ConvertDigit = «6»
        Случай 7: ConvertDigit = «7»
        Случай 8: ConvertDigit = «8»
        Случай 9: ConvertDigit = «9»
        Случай еще: ConvertDigit = ""
    Конец отборный
Функция конца
Другие решения  
  •  Как я добавляю кнопки на форме PDF для того чтобы добавить/извлекаю рядки данных?
  •  Шнур ошибки в блоке задвижки?
  •  сколько вариант сервера SQL на одной машине
  •  Внешний вид 2007 не может архивный файл открытой сети сохраненный
  •  Активно директория DNS записывает вопрос
  •  Отчет о доступа 2010 экспорта к CSV с коллекторами?
  •  Прокладчик OCE 9400 не начинает
  •  как добавить десятичное место в формуле в отчете о кристалла seagate
  •  Windows XP и Мичрософт Оутлоок и проблемы установителя Windows
  •  VB6 к VS2010 - консультации тренировки?
  •  
    programming4us programming4us