jackybhai Ответов: 1

Как автоматически запускать макросы при изменении значения в cell |excel|VBA|


У меня есть Excel

Это как два листа => лист 1 и лист 2

Лист 1 as => https://paste.pics/86a20854fa13010dd52c9a475baa5570

Лист 2 as =>https://paste.pics/e361556dfc6973e1b59c8382e2065db3

Лист 1 Как значение => 13, на который ссылается лист 2

"Если вы видите, что когда я ввожу значение в лист 1, то значение автоматически попадает в лист 2, используя =Sheet1!F5

В листе 2 есть еще одна вещь, упомянутая как Data => 'RAM'

Принимая значение листа 2 => MY VALUE = 13 и DATA ='RAM'

В колонке "I" листа 2

в разделе location => COLUMN => I => COPY => "I2" и далее => что много раз оперативная память должна печататься автоматически => макросы должны запускаться автоматически

Вывод должен быть таким : https://paste.pics/05793509907ae4e409acbb15976f7929

В случае, если когда-либо я изменю значение в листе 1 => VALUE => переданное на лист 2 => значение листа 2 должно быть взято в качестве подсчета и напечатано столько раз в столбце => "I"

Мой код, который работает, когда я использую кнопку на листе 2 => On click

Dim ws As Worksheet
    Dim rDest As Range
    Dim lCount As Long
    Dim sValue As String

    Set ws = ActiveWorkbook.ActiveSheet
    Set rDest = ws.Range("I2")

    With ws.Range(rDest, ws.Cells(ws.Rows.Count, rDest.Column).End(xlUp))
        If .Row >= rDest.Row Then .ClearContents
    End With

    lCount = Val(ws.Range("E4").Value)
    sValue = ws.Range("E8").Value

    If lCount > 0 Then rDest.Resize(lCount) = sValue


Что я уже пробовал:

Но как я могу добиться этого без нажатия кнопки |макросы автоматически срабатывают при изменении значения на листе 2|

1 Ответов

Рейтинг:
1

CHill60

Опереди меня! 5 б

Maciej Los

Спасибо, Кэролайн.