2016-03-18 2 views
0

Итак, в ячейке A6 введите значение (например, 6.5). Я привязал ячейку D6 к флажку.Как изменить значение ячейки (которая уже имеет значение) на основе значения в другой ячейке?

Как это сделать, чтобы при установке флажка и, таким образом, изменить значение D6 на TRUE, оно изменяет значение A6 на «Готово»?

+2

С УВА. SO не является кодом для моего сайта. –

ответ

0

Вам нужно будет изменить A6 в формулу, чтобы сделать это:

=If(D6="True", "Done", 6.5) 

Вы не можете иметь значение, как 6.5 в клетке и есть это изменение значения с помощью формулы. Если вам абсолютно необходимо иметь ячейку, в которой вы можете ввести значение, как 6.5 (скажем, B6), то в A6 вы можете сделать:

=If(D6="True", "Dont", B6) 

Если это все еще не является достаточно хорошим компромиссом, то вам придется прибегнуть на VBA, в котором код нужного листа вы бы что-то вроде:

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Not Intersect(Target, Range("D6")) Is Nothing Then 
     If Sheet1.Range("D6").Value = "True" Then 
      Sheet1.Range("A6").Value = "Done" 
     End If 
    End If 
End Sub 

Это будет обнаруживать изменения в D6 и если что изменение приводит к значению True, то она обновит A6 в "Done"

0

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

Sub changetoDone() 

Range("A6").Value = "Done" 

End Sub 
0

Первый запуск этого сделать флажок:

Sub MakeCheckbox() 
    ActiveSheet.CheckBoxes.Add(358.5, 93, 41.25, 33).Select 
    Selection.Text = "Click Me" 
End Sub 

, а затем назначить макрос к нему:

Sub CheckBox1_Click() 
    If ActiveSheet.CheckBoxes(1).Value = 1 Then 
     Range("D6").Value = True 
     Range("A6").Value = "Done" 
    Else 
     Range("D6").Value = False 
    End If 
End Sub 
Смежные вопросы