Оптимизация кода при помощи цикла - VBA

Узнай цену своей работы

Формулировка задачи:

Здравствуйте дорогие прогеры есть файл (приложил), в лист 1 справа необходимо проставить курсы из листа курсы за каждый день написал тупой код, можно его как то циклом или как нибудь оптимизировать? буду рад за любую помощь

Решение задачи: «Оптимизация кода при помощи цикла»

textual
Листинг программы
Sub Проставить_курсы_многих_валют()
    Dim i&, j&, A, B, Dic
    A = Worksheets("Курсы").[A1].CurrentRegion.Value
    Set Dic = CreateObject("Scripting.Dictionary"): Dic.CompareMode = 1
    For i = 2 To UBound(A)
        For j = 2 To UBound(A, 2)
            Dic(A(i, 1) & A(1, j)) = A(i, j)
        Next j
    Next i
    With Worksheets(2)
        '.Range("R4:R" & .UsedRange.Rows.Count).ClearContents  'раскомментировать, если надо стереть все старые курсы
        B = Intersect(.UsedRange, .Columns("I:J")).Value
        For i = 4 To UBound(B)
            If Dic.Exists(B(i, 1) & B(i, 2)) Then .Cells(i, 18) = Dic(B(i, 1) & B(i, 2))
        Next i
    End With
    Set Dic = Nothing
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5
Похожие ответы