Я пытаюсь заполнить текстовую область в инструменте продажи билетов ServiceNow, используя VBA
До сих пор я успешно использовал этот метод и этот точный (исключая код сайта и идентификатор текстовой области) код для заполненияобласть текста в другом инструменте создания билетов, однако в ServiceNow он по какой-то причине ничего не делает.
кажется, что он просто отлично вписывается в страницу, так как я могу получить возвращаемое значение на заголовке (открывая новый экземпляр IEс VBA и подключением к нему также не помогло), но при попытке установить значение текстовой области (поле описания или любое другое в этом отношении) он не отправляет текст поверх +, он также не возвращает никакогозначение для любого из других идентификаторов на веб-странице.
Я пытался сделать это несколькими различными способами, например, используя .innerHTML, .Value и .text, но ни один из них, похоже, не отправлял или не возвращал какое-либо значение, устанавливаяэто как объект, отправляющий его с чистым IE.document.getElementById ("ident.comments "). value =" test ", но без наковальни.
Любые указатели на то, что яЯ буду очень признателен за ошибки.
Sub Test()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
marker = 0
Set objShell = CreateObject("Shell.Application")
IE_count = objShell.Windows.Count
For X = 0 To (IE_count - 1)
On Error Resume Next
my_url = objShell.Windows(X).document.Location
my_title = objShell.Windows(X).document.Title
If my_title Like "INC0010005" & "*" Then
Set IE = objShell.Windows(X)
marker = 1
Exit For
Else
End If
Next
If marker = 0 Then
MsgBox ("Website not found")
Exit Sub
End If
'trying to send "test" text into the field, nothing comes up
Set notesObj = IE.document.getElementById("incident.comments")
notesObj.Value = "test"
tests = IE.document.getElementById("incident.comments").innerHTML
'testing for return value (comes up as empty message box each time)
MsgBox (tests)
Set evt = IE.document.createEvent("keyboardevent")
evt.initEvent "change", True, False
notesObj.dispatchEvent evt
End Sub
И код области текста описания:
<textarea name="incident.comments" class="form-control" id="incident.comments" aria-required="false" style="height: 64px; overflow: hidden; -ms-overflow-y: hidden; -ms-word-wrap: break-word;" spellcheck="true" onkeydown="multiKeyDown(this);;" onkeyup="multiModified(this);fieldTyped(this);" onkeypress="" onfocus="this.isFocused=true;" onblur="this.isFocused=false;" onchange="this.isFocused=false;multiModified(this)" wrap="soft" autocomplete="off" data-type="glide_journal_input" data-ref="incident.comments" data-charlimit="false" data-length="4000"></textarea>