Изменить значение ячейки на листе на основе значения другой ячейки листа - PullRequest
0 голосов
/ 27 марта 2020

У меня есть два листа в рабочей книге, «Лист1» и «Лист2».

Я хочу, чтобы значение ячейки А1 на листе 2 было либо строкой «Картошка», либо «Томоато» на основе значения ячейки А1 или A2 в sheet1 с условием.

например,

if A1 (sheet1) >= 7 or A2 (sheet1) >= 7 then
    A1(sheet2) = "Potato"
Else 
    A1(sheet2) = "Tomato"

У меня уже есть код в sheet1.

Dim xVal, yVal As String

Private Sub Worksheet_change(ByVal Target As Range)
    Static xCount As Integer
    Static yCount As Integer
    Application.EnableEvents = False
    If Target.Address = Range("C28").Address Then
        Worksheets("sheet2").Range("T3").Offset(xCount, 0).Value = xVal
        xCount = xCount + 1
    Else
        If xVal <> Range("C28").Value Then
         Worksheets("sheet2").Range("T3").Offset(xCount, 0).Value = xVal
        xCount = xCount + 1
        End If
    End If

    If Target.Address = Range("C24").Address Then
        Worksheets("sheet1").Range("U3").Offset(yCount, 0).Value = yVal
        yCount = yCount + 1
    Else
        If yVal <> Worksheets("Main").Range("C24").Value Then
            Worksheets("sheet1").Range("U3").Offset(yCount, 0).Value = yVal
            yCount = yCount + 1
        End If
    End If
    Application.EnableEvents = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    xVal = Range("C28").Value
    yVal = Range("C24").Value
End Sub

1 Ответ

1 голос
/ 27 марта 2020

Извините, но если ваша цель:

если A1 (sheet1)> = 7, то A1 (sheet2) = "Картофель" Остальное A1 (sheet2) = "Помидор"

вам вообще не нужен vba. Вы просто помещаете в ячейку A1 (sheet2) непосредственно функцию IF следующим образом:

= IF (Sheet1! A1> = 7; "Potato"; "Tomato")

, и это это:)

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