Макрос для данных в переменном местоположении

Итак, давайте посмотрим, как я могу это объяснить.

Я довольно новичок в VBA и макросах, и я думаю, что сейчас пытаюсь сделать что-то сложное для меня.

У меня есть данные, которые я хочу в файле .html. Если я открою это с помощью excel, все данные появятся в столбце A, но меня интересуют только данные о пятнах Бананы. Поскольку ничего не появляется только один раз, мне нужно найти «Это то, что я хочу» в этом столбце, и я хочу скопировать следующие 18 строк и вставить его в формате A4 (потому что у меня есть формула в других ячейках, используйте данные из ячеек, которые я вставляю в нее)

Проблема, которую я испытываю, состоит в том, что у меня есть 2 типа бананов, и они находятся в разных папках, поэтому это переменное местоположение.

Таким образом, 2 типа: Banana и Banana +

Банановые данные находятся в папке \ папка \ Quality \ banana \ v9.9 \ Completed, тогда есть папка на лот банана (то есть Lot 123), и внутри этой папки есть папка с результатами, а внутри этой папки находится Report.html

То же самое касается Banana +, данные находятся в: \ папке \ Quality \ banana + \ v.2.1 \ Completed, то же, что и раньше, папке за партию с папкой с данными, папкой с результатами и внутренним элементом Report.html.

Надеюсь, что все имеет смысл.

Вот где я до сих пор

Лист называется «Fruit» lotnumber находится в ячейке. Путь B1 находится в ячейке F1 (который появляется после того, как вы выбираете тип банана из раскрывающегося списка) путь, который я написал в этой ячейке,

\\folder\Quality\banana\v9.9\Completed \\folder\Quality\banana+\v2.1\Completed Sub PullData_click() 'Find the name of the file with the data in 'Lotnumber is in cell B1 of sheet “Fruit” Dim lotnumber As String lotnumber = ThisWorkbook.Sheets("Fruit").Range("B1").Value Dim path As String path = ThisWorkbook.Sheets("Fruit").Range("F1").Value Dim filename As String Set filename = path & "\Lot" & lotnumber & "\Data\Results.html" ChDir "\\folder\Quality" Workbook.Open filename:=filename 'search the specific string this is what i want Dim spotsrow As Long On Error Resume Next spotsrow = Application.WorksheetFunction.Match("This is what i want", Range("A:A"), 0) On Error GoTo 0 If spotsrow > 0 Then 'Select 18 rows from sheet bqcPublication_Script, copy and paste it in A4 Sheets("bqcPublication_Script").Range("A" & spotsrow & ":A" & spotsrow + 18).Copy ThisWorkbook.Sheets("Fruit").Range("A4").PasteSpecial (xlPasteValues) 

Interesting Posts

Как я могу заменить определенную часть текстовой строки в Excel, которая имеет переменное местоположение во всем документе?

Проверить количество столбцов в файле .xls перед загрузкой в ​​RAILS

Подсчет вверх в столбце до пустого?

Формула Excel – копировать каждую строку из 2 листов

Apache MultiPartEmail из URL, требующего cookie

MS Access vba экспортирует форму, чтобы преуспеть с условием

переопределение целочисленного vba

Изображение не работает после копирования в новую книгу?

макрос для хранения данных RTD

Ошибка SSIS при запуске пакета с использованием SQL-заданий

Как получить элемент из excel, который содержит несколько тегов HTML?

Поддерживайте фиксированное соотношение между двумя ячейками Excel vba

Форматировать ячейку для значений, разделенных запятыми

Есть ли у Excel VBA для «On Alert», как это делается для «On Error»?

Что означает «Microsoft Office Excel ожидает, что другое приложение завершит действие OLE»?

Давайте будем гением компьютера.