Я сталкиваюсь с некоторыми трудностями при попытке сравнить значения двух разных рабочих книг.Код должен удалить строки, которые не соответствуют условию if, то есть, если значение из рабочей книги "Nuevo hoja de cálculo" находится между интервалами значений из другой рабочей книги под названием "Formato CO-08a", он продолжает вычислятьнесколько переменных (m, y_n, y), и если значение выполняет второе условие if, то строка удаляется.
Я также пытался сделать это, работая с листами из той же книги, копируя вРабочая тетрадь "Nuevo hoja de calclo" лист из рабочей тетради "Formato CO-08a".Но это все еще не работает, поскольку программа не может прочитать значения из этого скопированного листа.Пример, который я написал ниже, работает с листами из одной и той же книги, но моя цель - работать с 2 разными книгами.
For i = 1 To Sheets("Seleccion_ECs").listaopciones.ListCount
Line1:
For Z = 0 To 7
Debug.Print Z
If (Sheets("Seleccion_ECs").Cells(i + 1, E).Value >= ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(40 + Z, 4).Value) And (Sheets("Seleccion_ECs").Cells(i + 1, E).Value <= ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(41 + Z, 4).Value) Then
m = (ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(41 + Z, 2).Value - ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(40 + Z, 2).Value) / (ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(41 + Z, 4).Value - ThisWorkbook.Sheets("Requisitos Contenedor + ATI").Cells(40 + Z, 4).Value)
y = m * (Sheets("Seleccion_ECs").Cells(i + 1, E).Value - Sheets("Requisitos Contenedor").Cells(40 + Z, 2).Value) + Sheets("Requisitos Contenedor").Cells(40 + Z, 4).Value
y_n = Sheets("Seleccion_ECs").Cells(i + 1, Q).Value
Debug.Print ("Se ha encontrado un intervalo")
If y_n > 1.02 * y Then 'Si se sale en un 2 por ciento de la zona aceptada, se elimina la fila.
Worksheets("Seleccion_ECs").Rows(i + 1).Delete
GoTo Line1
Else:
i = i + 1 'Preguntar si vale esto teniendo el for i=0
GoTo Line1
End If
End If
Next Z
Next i
Заранее спасибо