Есть ли функция, которая удаляет значение ячейки, если я удаляю значение другой ячейки в той же строке? - PullRequest
0 голосов
/ 21 июня 2019

В настоящее время я настраиваю небольшой инструмент для инвентаризации, и так как я новичок в vba, я застрял.

Итак, у меня есть таблица, в которой вы можете зарегистрировать все входящие и исходящие товары, и пока яМы включили макрос, который автоматически помещает дату в строку, если меняются ячейки во входящем и исходящем столбцах.

Что я хочу сейчас сделать, так это то, что если я удалю значение в исходящих / входящих столбцах, дата тоже исчезнет.

Пока это мой код:

Private Sub Worksheet_Change(ByVal Target As Range)

  Dim rng As Range

  On Error GoTo Ende
  Application.EnableEvents = False


  For Each rng In Application.Intersect(Columns("D"), Target).Cells
    If rng.Offset(0, -2).Value = "" Then
    rng.Offset(0, -2).Value = Date
    End If
  Next rng

Ende:
  Application.EnableEvents = True

End Sub

Кто-нибудь получил идею?

1 Ответ

1 голос
/ 21 июня 2019

Исправление ошибок и ошибок - добавьте еще один цикл for, который проверяет, пуста ли целевая ячейка:

Private Sub Worksheet_Change(ByVal Target As Range)

  Dim rng As Range

  On Error GoTo Ende
  Application.EnableEvents = False


  For Each rng In Application.Intersect(Columns("D"), Target).Cells
    If rng.Offset(0, -2).Value = "" Then
    rng.Offset(0, -2).Value = Date
    End If
  Next rng

  For Each rng In Application.Intersect(Columns("D"), Target).Cells
    If rng = "" Then
    rng.Offset(0, -2).Value = ""
    End If
  Next rng

Ende:
  Application.EnableEvents = True

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...