Sub Get_Value_From_Closed_Book()
Dim sShName As String, sAddress As String, vData() As Variant, D$, Sch$, i&, j&
Application.ScreenUpdating = False
Workbooks.Open "C:\Users\bel\Documents\1.xlsx"
sAddress = "A1:P58"
vData = Sheets("12").Range(sAddress).Value
ActiveWorkbook.Close False
D = InputBox("Размер в дюймах, дробная часть через запятую")
Sch = InputBox("Стандарт без 'Sch'")
For i = 3 To UBound(vData, 1)
If vData(i, 1) = D Then
Exit For
End If
If i = UBound(vData, 1) Then Exit Sub
Next i
ActiveCell.Value = vData(i - 1, 2)
For j = 3 To UBound(vData, 2)
If vData(1, j) = Sch Then
Exit For
End If
If j = UBound(vData, 2) Then Exit Sub
Next j
ActiveCell.Offset(, 1).Value = vData(i - 1, j)
ActiveCell.Offset(1, 0).Range("A1").Select
End Sub
Подскажите как сделать оффсет как в конце макроса только чтобы он выполнялся в случае если Sch имеет пустое значение?
Можно файл пример, а то сложно уловить суть работы процедуры. Непонятно зачем записываются данные в ActiveCell, в этом случае нужно отслеживать чтобы активной ячейкой была нужная, это ведет к ошибкам записи данных. Человеческий фактор!
Nordheim, так он же из закрытой книги данные берет, вопрос простой, как сделать оффсет по условию Sch = "" . ActiveCell.Offset(1, 0).Range("A1").Select срабатывает только когда макрос выполнен полностью а когда нет Sch он остается в ячейке с данными а нужно чтобы по горячей кнопке можно было весь столбец забить
решил проблему добавление пустого толбца в таблицу и при пустом запросе Sch он берет пустое значение, не понятно почему он не хотел перекидывать без этого