Excel VBA를 사용하여 스프레드시트의 데이터를 aspx 온라인 양식으로 내보내고 제출하려고 합니다.
예: 제목이 "NAME"인 열 A가 있는 스프레드시트가 있습니다. 행은 해당 데이터로 채워집니다. 또한 asp.net 웹 양식으로 연결되는 URL이 있습니다. 웹 양식에는 "귀하의 이름" 필드가 있습니다. 다음과 같은 매크로를 실행하고 싶습니다.
- 인터넷 익스플로러를 실행하다
- ASP 웹 양식 URL로 이동
- Excel 스프레드시트의 2행에 있는 해당 데이터로 웹 양식 필드를 채웁니다.
- 제출 버튼을 클릭하세요
- 모든 행이 제출될 때까지 반복
Excel 스프레드시트:
나는 HTML에 대해 이 작업을 수행하는 방법에 대한 튜토리얼을 보았지만 ASP 웹 양식에는 아무것도 없었으며 분명히 다른 사람들이 이전에 동일한 주제에 대해 도움을 요청한 것 같습니다.링크.
여기 지금까지 함께 엮은 코드와 내가 겪고 있는 오류가 있습니다. 어떤 조언이라도 대단히 감사하겠습니다. 또한 나는 매우 초보자임을 명시하는 것이 필요하다고 생각하므로 일반 사용자의 조건을 부탁드립니다.
답변1
문제는 작업을 수행하기 위해 탐색할 iframe이 있다는 것입니다.
아이프레임:
코드는 이를 탐색해야 합니다. 예를 들면 다음과 같습니다.
Option Explicit
Public Sub SubmitInfo()
Dim IE As New InternetExplorer
With IE
.Visible = True
.navigate "https://www.w3schools.com/asp/showasphtmfile.asp?filename=demo_reqquery"
While .Busy Or .readyState < 4: DoEvents: Wend
With .document.getElementsByTagName("iframe")(0).contentDocument
.querySelector("input[type=text]").Value = "blah"
.querySelector("input[type=submit]").Click
End With
'.Quit '<== Remember to quit application
End With
End Sub