Я пытаюсь сделать две вещи, выяснить, если Value1> = 3 И Value2 - Value1> = 5. Если это правда, то я бы хотел, чтобы YES появлялся в определенной ячейке в той же строке, что и Value2.,У меня уже было это, но я случайно переписал код, теперь я искал решения и пытался исправить это в течение нескольких часов, но я не могу найти то, что я делал, когда он работал.Пожалуйста, помогите!
Лист1:
Имя = Случайное имя Значение1 = 6
Лист2:
Name = RandomName Value2 = 20
Sub Ifgreaterthan()
Dim vFind
Dim lLoop As Long
Dim rFound As Range
Dim Sheet1 As Range
Dim REF As Variant
Dim NEW1 As Variant
Dim REFDELNEW1 As Integer
Dim x As String
Dim y As String
'Определить активную ячейку - это поиск уникального идентификатора, который одинаков для Value1 иValue2
vFind = ActiveCell
On Error Resume Next
'Это ищет уникальный идентификатор на другом листе
With Sheet1
Set rFound = .UsedRange.Find(What:=vFind, After:=.Cells(1, 1),
LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows,
SearchDirection:=xlNext, MatchCase:=False)
' Это значения, основанные на уникальном идентификаторе
REF = WorksheetFunction.VLookup("rFound", "Sheet1!A:B", 2, 0)
NEW1 = WorksheetFunction.VLookup("vFind", "Sheet2!A:B", 2, 0)
REFDELNEW1 = NEW1 - REF
«Переменные да и нет
x = "Yes"
y = "No"
» Основные вычисления
If REF >= 3 & REFDELNEW1 >= 5 Then
Worksheets("Sheet2").ActiveCell.Offset(, 3).Value = x
Else: Worksheets("Sheet2").ActiveCell.Offset(, 3).Value = y
End If
End With
End Sub
Однажды я получил «Нет», как и предполагалось, но мне удалось потерять код.Я уверен, что ответ был там, поскольку я использую журнал изменений трека VBA в Excel, так что я уверен, что в какой-то момент он сделал то, что должен был сделать.Я потратил часы, пытаясь воссоздать ситуацию, и я не уверен, где искать и что делать в этот момент.Я надеялся, что профессионал сможет найти решение немедленно.В то же время я сам буду работать над кодом.