Страницы: 1
RSS
Изменение строчки кода VBA с помощью VBA
 
Здравствуйте уважаемый форумчане,

У меня есть несколько идентичных макросов (макросы в определенном стоблце ищут совпадения со списком), в которых часто меняется строка c кодом "Const codesToFind". Возможно ли дать возможность через UserForm выбирая  в каком макросе сделать изменения отредактировать эту строку?
Код
Sub offshorecountryben(control As IRibbonControl)
    Dim rng As Range, c As Range, sToFind() As String
    Dim i As Long, n As Long, k As Long, f As Boolean
    Dim rFst As Long, rLst As Long
    Const codesToFind = "LU AD MU BS BH CW KY CY JE MT PA UY GG MC BZ VU BM BN BB AG AI AW IM CK WS DM GI CR SC LI CV BW KN MO SX MS NR MH PW LC VC GD VG LV NU LT MV AN VI LR LI HK AN"
    Application.ScreenUpdating = False
    With ActiveWorkbook
        n = .Sheets.count
        With .Sheets("Report 1")
            With .UsedRange
                With .Find("Beneficiary Bank")
                    k = .Column
                    rFst = .Row + 1
                End With
                rLst = .Row + .Rows.count - 1
            End With
            Set rng = .Range(.Cells(rFst, k), .Cells(rLst, k))
            .Copy After:=ActiveWorkbook.Sheets(n)
        End With
        With .Sheets(n + 1)
            .Range(rng.Address).EntireRow.Delete
            For Each c In rng
                f = False
                For i = 0 To UBound(sToFind)
                    If c Like "????" & sToFind(i) & "*" Then
                        f = True
                        Exit For
                    End If
                Next i
                If f Then
                    c.EntireRow.Copy .Rows(rFst)
                    rFst = rFst + 1
                End If
            Next c
        End With
    End With
    Application.ScreenUpdating = True
End Sub

Спасибо.
 
Просьба к модератором изменить название темы на - "Изменить код макроса с помощью другого кода".
Спасибо
 
Менять код макроса кодом - это порочный путь. И зачем Вам несколько ИДЕНТИЧНЫХ макросов?
Выбирайте нужную строку с кодами в переменную (можно и через UserForm это организовать) и используйте эту переменную в ЕДИНСТВЕННОМ макросе.
Согласие есть продукт при полном непротивлении сторон
 
Цитата
Sanja написал:
И зачем Вам несколько ИДЕНТИЧНЫХ макросов
В них меняются столбцы поиска, и так же начиная с с какого символа начинать поиск. Например вышеуказанный код ищет страну по 5-6 символу SWIFT-а, а другой ищет конкретные слова в адресе.
 
Цитата
oggis написал: В них меняются столбцы поиска....
Это все тоже можно запрашивать у пользователя, записывать в переменные и использовать в ОДНОМ макросе.
Для выбора набора кодов см.файл-пример
Согласие есть продукт при полном непротивлении сторон
 
Sanja, А как быть в моменте со SWIFT-ом, где поиск должен происхоть с 5го символа?. Спасибо Вам за форму выбора кодов
 
Цитата
oggis написал: А как быть в моменте со SWIFT-ом
Я вообще не знаю что это такое. Файл-пример должны были ВЫ показать, а не я что-то выдумывать. Как есть - Как надо.
Опишите саму ЗАДАЧУ, а не СПОСОБ, которым Вы пытаетесь ее решить.
Согласие есть продукт при полном непротивлении сторон
Страницы: 1
Наверх