Я не могу опубликовать свой код, потому что это свойство компании, но проблема в том, что я хотел бы ввести формулу ячейки, чтобы она автоматически обновлялась при изменении некоторых других ячеек.
У меня две колонки: одна для цен в долларах США и другая для другой валюты. Другая колонка валюты - это просто «= СУММ ...», но конвертация валюты в доллары США всегда меняется, а цены достаточно велики, чтобы эти изменения имели значение. Таким образом, у меня есть пользователь, который вводит значение преобразования в текстовом поле activex, и я хочу установить формулу ячеек USD в качестве цены в долларах США, поэтому, очевидно, мне нужно получить это значение конверсии, но я не могу просто ввести имя текстового поля, которое не работает.
Я использую VBA, но я хотел бы ввести это непосредственно в ячейку как «= FORMULA», где формула содержит значение текстового поля activeX, чтобы оно автоматически обновлялось.
Насколько я нашел в VBA, если я хочу назначить формулу для ячейки, я должен сделать это внутри поднабора или функции, поэтому я должен вызывать sub каждый раз, когда я хочу обновлять ячейки, но я хочу это будет таким же автоматическим, как Excel для других формул ячейки.
Я играл с Worksheet_Change и считал workheet_open, но имел другие проблемы. Например, существует много разных ячеек, которые могут меняться, и я не могу просто контролировать столбец цены в другой валюте для изменения, потому что, когда ячейки обновляются из формулы, изменение в рабочем листе не показывает эти ячейки как имеющие изменилось.
Возможно, это так же просто, как установка формул ячейки на workheet_open, но мне также не повезло с тем, что cell.formula даже работал. Я мог бы отбросить текстовое поле для обычной ячейки, которая полностью решила бы эту проблему, но у меня также есть субтитр textbox_lostfocus, который мне нужно запустить, и я не знаю, как это сделать для ячейки.
Извините за длинный пост, в общем, как я могу оценить значение текстового поля для использования в формуле ячейки в идеале без использования vba?