Нашел в инете аналог, а он в 10 раз быстрее работает

Вроде все оптимально сделал
гляньте кто-нить в аттаче что не так plz

Option Explicit
Private Sub mnuRead_Click()
On Error GoTo Error:
Dim i As Long
Dim strTmp As String, strFullString As String, strReplace As String, strSrc As String
strFullString = txtCode.Text
For i = 1 To Len(strFullString)
strTmp = Mid$(strFullString, i, 1)
'Debug.Print strTmp
Select Case strTmp
Case "~": strReplace = "Ё": Case "`": strReplace = "ё"
Case "Q": strReplace = "Й": Case "q": strReplace = "й"
Case "W": strReplace = "Ц": Case "w": strReplace = "ц"
Case "E": strReplace = "У": Case "e": strReplace = "у"
Case "R": strReplace = "К": Case "r": strReplace = "к"
Case "T": strReplace = "Е": Case "t": strReplace = "е"
Case "Y": strReplace = "Н": Case "y": strReplace = "н"
Case "U": strReplace = "Г": Case "u": strReplace = "г"
Case "I": strReplace = "Ш": Case "i": strReplace = "ш"
Case "O": strReplace = "Щ": Case "o": strReplace = "щ"
Case "P": strReplace = "З": Case "p": strReplace = "з"
Case "{": strReplace = "Х": Case "[": strReplace = "х"
Case "}": strReplace = "Ъ": Case "]": strReplace = "ъ"
Case "A": strReplace = "Ф": Case "a": strReplace = "ф"
Case "S": strReplace = "Ы": Case "s": strReplace = "ы"
Case "D": strReplace = "В": Case "d": strReplace = "в"
Case "F": strReplace = "А": Case "f": strReplace = "а"
Case "G": strReplace = "П": Case "g": strReplace = "п"
Case "H": strReplace = "Р": Case "h": strReplace = "р"
Case "J": strReplace = "О": Case "j": strReplace = "о"
Case "K": strReplace = "Л": Case "k": strReplace = "л"
Case "L": strReplace = "Д": Case "l": strReplace = "д"
Case ":": strReplace = "Ж": Case ";": strReplace = "ж"
Case Chr$(34): strReplace = "Э": Case "'": strReplace = "э"
Case "Z": strReplace = "Я": Case "z": strReplace = "я"
Case "X": strReplace = "Ч": Case "x": strReplace = "ч"
Case "C": strReplace = "С": Case "c": strReplace = "с"
Case "V": strReplace = "М": Case "v": strReplace = "м"
Case "B": strReplace = "И": Case "b": strReplace = "и"
Case "N": strReplace = "Т": Case "n": strReplace = "т"
Case "M": strReplace = "Ь": Case "m": strReplace = "ь"
Case "<": strReplace = "Б": Case ",": strReplace = "б"
Case ">": strReplace = "Ю": Case ".": strReplace = "ю"
Case "/": strReplace = "."
Case "?": strReplace = ","
Case "@": strReplace = Chr$(34)
Case "#": strReplace = "№"
Case "$": strReplace = ";"
Case "^": strReplace = ":"
Case "&": strReplace = "?"
Case Else: strReplace = strTmp
End Select
strSrc = strSrc & strReplace
Next i
txtResult.Text = strSrc
Error:
If CBool(Err) Then
MsgBox "Error:" & Chr$(32) & Err.Number & vbCrLf & vbCrLf & _
"Description:" & Chr$(32) & Err.Description, _
vbOKOnly Or vbCritical Or vbApplicationModal, "Error"
End If
End Sub
DeleteCriticalSection LeaveCriticalSection EnterCriticalSection InitializeCriticalSection VirtualFree VirtualAlloc LocalFree LocalAlloc TlsSetValue TlsGetValue GetModuleHandleA GetLastError GetCommandLineA WriteFile SetFilePointer SetEndOfFile RtlUnwind ReadFile RaiseException GetStdHandle GetFileSize GetFileType ExitProcess CreateFileA CloseHandle MessageBoxA WriteFile ReadFile MultiByteToWideChar GlobalUnlock GlobalLock GlobalAlloc GetVersionExA GetModuleFileNameA GetLastError CreateFileA CloseHandle keybd_event TrackPopupMenu SetWindowPos SetClipboardViewer SetClipboardData SendMessageA RegisterHotKey RegisterClassA PostQuitMessage OpenClipboard MessageBoxA LoadIconA GetMessageA GetCursorPos GetClipboardData FindWindowA EmptyClipboard DispatchMessageA DestroyMenu DefWindowProcA CreateWindowExA CreatePopupMenu CloseClipboard ChangeClipboardChain AppendMenuA ActivateKeyboardLayout ShellAboutA Shell_NotifyIconA
Maitris писал(а):Неслабо для такой маленькой программулины
uhm писал(а):GoGosha, программу не смотрел, но есть у меня подозрение, что здесь это не главная причина торможения. Строки обычно бывают не слишком длинными, и разница между n и n^2 не слишком велика. Все дело, ИМХО, в АПЯх.
Я писал(а):без API
Сейчас этот форум просматривают: Yandex-бот и гости: 47