profile
[/banner_gorizont_adaptive]
Размещено 4 года назад по предмету Информатика от zinchenkocater

Помогите в задачами по VBA

  1. Ответ на вопрос
    Ответ на вопрос дан Аккаунт удален
    Option Explicit

    Dim s As String
    Dim CryptoKey As Integer, ns As Integer

    Sub CreateCharTable()
        ' Заполняет строку с таблицей для шифрования/дешифрования
        Dim i As Integer, k As Integer
        Dim c As String
        i = 1
        s = ""
        c = "~"
        With Sheets("Лист1")
            While Len(c) > 0
                c = .Cells(i, 1).Value
                If Len(c) > 0 Then
                    i = i + 1
                    s = s + c
                End If
            Wend
        End With
    End Sub

    Function GetCodeChar(c As String) As String
        Dim i As Integer, j As Integer
        i = InStr(s, c)
        j = i + CryptoKey
        If j > ns Then j = j - ns
        GetCodeChar = Mid(s, j, 1)
    End Function

    Function GetDeCodeChar(c As String) As String
        Dim i As Integer, j As Integer
        i = InStr(s, c)
        j = i - CryptoKey
        If j <= 0 Then j = ns + j
        GetDeCodeChar = Mid(s, j, 1)
    End Function

    Sub CodeString(st)
        Dim i As Integer
        For i = 1 To Len(st)
            Mid(st, i, 1) = GetCodeChar(Mid(st, i, 1))
        Next i
    End Sub

    Sub Decodestring(st)
        Dim i As Integer
        For i = 1 To Len(st)
            Mid(st, i, 1) = GetDeCodeChar(Mid(st, i, 1))
        Next i
    End Sub

    Sub aaa()
        Dim c As String
        CryptoKey = Sheets("Лист1").Cells(2, 2).Value  'Ключ шифрования в (B2)
        CreateCharTable
        ns = Len(s)
        If CryptoKey >= ns Then
            MsgBox "Уменьшите длину ключа!"
        Else
            c = InputBox("Введите сообщение, первый символ Ш-щифровать, Д-дешифровывать")
            If Len(c) > 0 Then
                Select Case UCase(Left(c, 1))
                Case "Ш"
                    c = Mid(c, 2)
                    CodeString c
                Case "Д"
                    c = Mid(c, 2)
                    Decodestring c
                End Select
                MsgBox c
               
            End If
        End If
    End Sub


    1. Ответ на вопрос
      Ответ на вопрос дан Аккаунт удален
      Помещать в отдельный модуль, запускать процедуру ааа
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.