Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Excel, Cлово с англ-го должно писаться по русски Добавлено: 31.10.06 19:56  

Автор вопроса:  Suley-man
Помогите закончить, не врублюсь как его запустить. Не силен я в программировании. Нужно что бы работал на листе "INFO". Ставлю в модуль, он не работает. Напишите если можно полностью. please!

russA1=""
dlina = Len( A1 )
'Сначала обрабатываем самые "длинные" буквы:
i = 1
do while i<= dlina
     r = ""
     s = lcase$(Mid$( A1, i, 2 ))
     Select case True
              case s = "ch": r = "ч"
              case s = "sh": r = "ш"
              case s = "zg": r = "ж"
              ' и так далее
     End Select
     'Проверю, малоли буква большая была:
     s = Mid$( A1, i, 2 )
     if ucase$(left$(s,1))=left$(s,1) then r=ucase$(r)
     russA1 = russA1 + r
     i=i+1
loop

i = 1
do while i<= dlina
     r = ""
     s = lcase$(Mid$( A1, i, 1 ))
     Select case True
              case s = "a": r = "а"
              case s = "b": r = "б"
              case s = "c": r = "ц"
              case s = "d": r = "д"
              ' и так далее
     End Select
     'Проверю, малоли буква большая была:
     s = Mid$( A1, i, 1 )
     if ucase$(left$(s,1))=left$(s,1) then r=ucase$(r)
     russA1 = russA1 + r
     i=i+1
loop


 

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 ZoomerSD



ICQ: 148640473 

Вопросов: 135
Ответов: 270
 Профиль | | #1 Добавлено: 03.11.06 10:14
Вопрос такой, тебе нужно чтобы это событие происходило когда меняеться значение в ячейке, я так понимаю?

Ответить

Номер ответа: 2
Автор ответа:
 Suley-man



Вопросов: 1
Ответов: 1
 Профиль | | #2 Добавлено: 03.11.06 18:37
Да, спасибо, уже нашел что искал, вот если кому интересно:
Sub RusName()
Dim b9 As String
russB9 = ""
b9 = Range("B9";).Value
dlina = Len(b9)
i = 1
Do While i <= dlina
     r = ""
     uc = False
     s = Mid$(b9, i, 2)
     If UCase$(Left$(s, 1)) = Left$(s, 1) Then uc = True
     s = LCase$(s)
     Select Case True
              Case s = "ch": r = "ч": i = i + 2
              Case s = "sh": r = "ш": i = i + 2
              Case s = "zh": r = "ж": i = i + 2
              Case s = "ts": r = "ц": i = i + 2
              Case s = "ya": r = "я": i = i + 2
              Case s = "yo": r = "ё": i = i + 2
              Case s = "yu": r = "ю": i = i + 2
              Case s = "ja": r = "я": i = i + 2
              Case s = "jo": r = "ё": i = i + 2
              Case s = "ju": r = "ю": i = i + 2
              Case s = "je": r = "e": i = i + 2


              Case Else
                s = LCase$(Mid$(b9, i, 1))
                Select Case True
                    Case s = "a": r = "а": i = i + 1
                    Case s = "b": r = "б": i = i + 1
                    Case s = "c": r = "к": i = i + 1
                    Case s = "d": r = "д": i = i + 1
                    Case s = "e": r = "е": i = i + 1
                    Case s = "f": r = "ф": i = i + 1
                    Case s = "g": r = "г": i = i + 1
                    Case s = "h": r = "х": i = i + 1
                    Case s = "i": r = "и": i = i + 1
                    Case s = "j": r = "й": i = i + 1
                    Case s = "k": r = "к": i = i + 1
                    Case s = "l": r = "л": i = i + 1
                    Case s = "m": r = "м": i = i + 1
                    Case s = "n": r = "н": i = i + 1
                    Case s = "o": r = "о": i = i + 1
                    Case s = "p": r = "п": i = i + 1
                    Case s = "q": r = "к": i = i + 1
                    Case s = "r": r = "р": i = i + 1
                    Case s = "s": r = "с": i = i + 1
                    Case s = "t": r = "т": i = i + 1
                    Case s = "u": r = "у": i = i + 1
                    Case s = "v": r = "в": i = i + 1
                    Case s = "w": r = "в": i = i + 1
                    Case s = "x": r = "д": i = i + 1
                    Case s = "y": r = "й": i = i + 1
                    Case s = "z": r = "з": i = i + 1
                    Case s = " ": r = " ": i = i + 1
                    Case Else: r = s: i = i + 1
                End Select
     End Select
     If uc = True Then r = UCase$(r)
     russB9 = russB9 + r
Loop

Range("d9";).Value = russB9

End Sub

Ответить

Номер ответа: 3
Автор ответа:
 Василий



Вопросов: 8
Ответов: 27
 Профиль | | #3 Добавлено: 03.11.06 22:50
Вот спасибо. А то все за деньги.))

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам