Я пытаюсь сделать простой бюджет в excel, и я хочу, чтобы макрос увидел, к какой категории я внес изменения, а затем добавьте изменение в общий обзор денег используемые в этой категории.Изменение значения ячейки на основе категории в бюджете
То есть у меня в верхней части моего листа ячейка для категории «Еда». Далее по листу я поставил следующее: Дата; Категория; Используемая сумма.
Мой код был использован кнопкой до сих пор. Кнопка проверяет, имеет ли ячейка 5 слева значение «Dagligvare», а затем изменяет значение в другом месте на листе. Моя проблема в том, что иногда кнопка распознает слово, а иногда нет. Поэтому мой вопрос: может ли кто-нибудь понять, почему он работает только иногда, хотя я ничего не меняю?
Private Sub CommandButton1_Click()
Dim celltxt As String
celltxt = ActiveCell.Offset(0, -5).Text
If InStr(1, celltxt, "Dagligvare") Then
Range("C9") = 3
Else
MsgBox ("Nope")
End If
End Sub
Вы определяете ячейку путем смещения; это означает, что он вычисляется относительно активной ячейки. Вы уверены, что всегда находитесь в правильной ячейке, прежде чем нажимать кнопку? –
Знаете ли вы, что 'InStr()' по умолчанию чувствителен к регистру? поэтому 'Dagligvare' и' dagligvare' будут давать разные результаты. –
рассмотрим событие «Worksheet_Change», которое будет срабатывать при каждом изменении на листе, но также может быть ограничено стрельбой, когда меняются только определенные ячейки. Или рассмотрите простую формулу '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''. –