2016-01-17 3 views
0

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

Например: при первой же прошивке пользователь вводит со 100 на J" & lrTest - 1 и G6 = 0. Тогда это будет =sum (0, 100), что равно 100. Но со второй попытки попытается суммировать функцию и выиграть Продолжайте.

If cmbcategoria.Text = "Casa" Then 
    Range ("G6").Formula = "=sum ("G6", J" & lrTest - 1 &")" 
End If 

Что можно сделать, чтобы решить эту проблему?

Пс: Я думаю, вы не знаете полный код, но при необходимости я могу его опубликовать.

This is how my workbook looks by now

+3

Вы не можете поместить формулу в G6, который ссылается на G6. Это называется [Circular Reference] (https://support.office.com/en-us/article/Find-and-fix-a-circular-reference-C17488E3-3CBE-4FA8-A6BC-1A6FFA64DB78). Кроме того, '' G6 "' должен быть 'G6', и вам нужно удвоить кавычки внутри строки с кавычками. Таким образом, в целом, есть много ошибок со всем этим. – Jeeped

+0

Я не думаю, что у вас достаточно «вокруг g6». –

+0

Я не уверен, чего вы пытаетесь достичь, потому что я действительно не понял ваш вопрос, но посмотрел на код, который вы вставили (не учитывая неправильную ячейку ссылки, которые даны) G6 должен быть текстом, т. е. вокруг него не должно быть двойных кавычек. Ваш фактический оператор станет «= sum (G6, J" & lrTest - 1 & ")" – user5612655

ответ

0

Это будет работать =)

If cmbcategoria.Text = "Casa" Then 
    Range("G6").Formula = "=SUM(" & Range("G6").Value & ", J" & lrTest - 1 & ")" 
End If 
Смежные вопросы