VBA - заполнение значения ячейки на основе значения другой ячейки (код не работает) - PullRequest
0 голосов
/ 11 января 2019

Я попытался написать приведенный ниже код, поэтому в зависимости от значения в листах ячейки «2. Опрос» ячейка f11, тогда я хочу, чтобы «да» или нет, чтобы значение отображалось в текущей ячейке вкладки e59 (текущая вкладка - 3. Спецификация блока). Я в настоящее время получаю ошибку времени выполнения 9, но не знаю почему. (вероятно, сделал что-то глупое)

 Worksheets("3.Unit Specification").Range("e59").Formula = "=IF('2. 
 Survey'!F11=""Mains"",""Yes"","")"

ошибка времени выполнения 9 - это моя текущая проблема. Я просто хочу, чтобы ячейка e59 имела значение yes или не имела значения (хотя это раскрывающийся список, и значение точно соответствует списку, поэтому не знаю, что приводит к проблеме).

1 Ответ

0 голосов
/ 11 января 2019

Вам нужно удвоить все кавычки. Вы пропустили последнюю пару.

Worksheets("3.Unit Specification").Range("e59").Formula = _
                             "=IF('2. Survey'!F11=""Mains"",""Yes"","""")"

Редактировать

'Non-formula approaches

If Worksheets("2. Survey").Range("F11").Value = "Mains" Then
    Worksheets("3.Unit Specification").Range("e59").Value = "Yes"
Else
    Worksheets("3.Unit Specification").Range("e59").Value = ""
End If

'OR

Worksheets("3.Unit Specification").Range("e59").Value = IIf(Worksheets("2. Survey").Range("F11").Value = "Mains", "Yes", "")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...