Формула для условного форматирования с использованием языка системы или Office - PullRequest
0 голосов
/ 04 марта 2019

У меня есть макрос VBA, который создает новый лист и предоставляет небольшой список задач.Одна часть этого заключается в том, что вы можете пометить ввод как выполненный, который затем использует условное форматирование для настройки свойств шрифта.Пока все работает.

Теперь этот макрос также должен работать на английских и немецких ноутбуках.Таким образом, в зависимости от языка, он должен вставить другую формулу.

   'DropDown List
    With Range("F4:F50").Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
    xlBetween, Formula1:="Yes,No"
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With

    Dim f As String
    For i = 5 To 50
    f = "F" & i
    Dim frm As String

    frm = "=IF(" & "$F" & "$" & i & "=""YES"",TRUE,FALSE)"

    Range("C" & i & ":" & "E" & i).Select
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:=frm
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Font
            .Strikethrough = True
            .ThemeColor = xlThemeColorDark1
            .TintAndShade = -0.249946592608417
        End With
    Next i
    Worksheets(sn).Move After:=Sheets(ActiveWorkbook.Sheets.Count)

Для немецкого языка формуляр будет frm = "=WENN(" & "$F" & "$" & i & "=""Ja"";WAHR;FALSCH)"

Большое спасибо!

PS: может быть решен без языкового местоположения.Смотрите комментарии ниже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...