Я решаю следующую проблему: я хочу очистить заголовок веб-сайта, когда ссылка вставлена в столбец A, и поместить это значение в соответствующую ячейку (рядом с ней) в столбце B. Кажется, что проблема заключается в том, что после вставки веб-сайт в столбце A, код перезапускает весь список со столбца A2 до «последней строки», как определено в коде. Есть ли способ изменить столбец B только после изменения одного столбца A? Т.е., если я вставлю ссылку в столбец A36, я получу заголовок в B36, независимо от того, находится ли ячейка в середине используемого диапазона или в самом низу (то есть затрагивается только эта ячейка). Я бы хотела использовать это без необходимости повторного запуска нескольких входов в текущем состоянии; (т. е. l oop "для i = 2 до последней строки")? Кроме того, я хотел бы изменить нижеприведенное значение из модульного макроса, то есть подчиненное к частному подчиненному, реагирующему на изменение (то есть функцию пересечения), где «цель» - любая ячейка из диапазона A: A. Большое спасибо!
enter code here
Sub get_title_header()
Dim wb As Object
Dim doc As Object
Dim sURL As String
Dim lastrow As Long
lastrow = Sheet1.Cells(Rows.Count, "A").End(xlUp).row
For i = 2 To lastrow
Set wb = CreateObject("internetExplorer.Application")
sURL = Cells(i, 1)
wb.navigate sURL
wb.Visible = False
While wb.Busy
DoEvents
Wend
''HTML document
Set doc = wb.document
Cells(i, 2) = doc.Title
On Error GoTo err_clear
Cells(i, 3) = doc.GetElementsByTagName("h1")(0).innerText
err_clear:
If Err <> 0 Then
Err.Clear
Resume Next
End If
wb.Quit
Range(Cells(i, 1), Cells(i, 3)).Columns.AutoFit
Next i
End Sub