Мне нужно извлечь отчет с веб-сайта и экспортировать его в Excel.
Я могу войти в систему и нажать на первый из двух элементов div, которые мне нужно нажать, но когда я прикажу vba нажатьна втором div ничего не происходит.
Я новичок в этом бизнесе и ничего не знаю о javascript, поэтому, пожалуйста, исправьте меня, если я что-то не так говорю.
Это рассматриваемый сайт:
http://gaps.myeasy.com.br/gaps2010/Spek/Principal.aspx
Мне нужно нажать «Gestão», а затем «Controle de Atividades».
Мой код пока:
Sub LoginGaps()
Dim IE As Object
'START INTERNET EXPLORER
Set IE = CreateObject("InternetExplorer.application")
IE.Visible = True
IE.Navigate ("http://gaps.myeasy.com.br/gaps2010/Spek/Principal.aspx")
While IE.Busy Or IE.readyState <> 4: DoEvents: Wend
'LOGIN TO WEBSITE
'frmLogin.Show
'CLICK ON "GESTÃO"
IE.document.getElementById("uwlBar_Group_2_text_top").Click
'CLICK ON "CONTROLE DE ATIVIDADES"
IE.document.getElementById("uwlBar_2_Item_1").Click
End Sub
К сожалению, я не могу передать пользовательские данные здесь, на форуме, потому что они не мои, поэтому я добавил ' перед строками, которые это делают.
Несмотря на то, что я не знаю javascript, я мог понять, какой сценарий активирован, когда нажимаю «Controle de atividades», но мне нужно знать значение «sReturn», чтобы можно было вызывать его с помощью «execScript»,и я не смог найти ценность sReturn из-за моей неопытности.
Это сценарийt:
function aftermenu(sRetorno)
{
var aRetorno=sRetorno.split("|");
var iModulo=aRetorno[0];
var sId=aRetorno[1];
var sPagina=aRetorno[2];
var sLogin=aRetorno[3];
var iPermissao=aRetorno[4];
if (iPermissao=="1")
{
if (lstItem!=null)
{
lstItem.style.backgroundColor="#f9f9f9";
lstItem.onmouseover=function(){this.style.background="#d6d3d6"};
lstItem.onmouseout=function(){this.style.background="#f9f9f9"};
//lstItem.setSelected(false);
}
lstItem=null;
if (sId!=""){
lstItem=document.getElementById(sId);
lstItem.style.backgroundColor="#dee6f3";
lstItem.onmouseover=function(){};
lstItem.onmouseout=function(){};
/*
lstItem=iglbar_getItemById(sId).element;/*
lstItem.setSelected(true);*/}
frmPrincipal=document.getElementById("frmPrincipal");
frmPrincipal.location.href=sPagina;
}
else
{
showmessage("Acesso ao módulo/função não permitido para o usuário "+sLogin+".\nConsulte o administrador do sistema.",520,constInfo,constOk,this,false);
}
}
Сценарий разделяет значение sRetorno на 5 переменных, а затем открывает ссылку в "frmPrincipal", который является огромным квадратом на странице, и по этой ссылке я нахожу отчет.Если вы можете помочь мне определить, как определяется значение sRetorno, я подумал о двух возможностях.
Первый - вызвать скрипт с помощью «execScript», а второй - взять значение sPagina и открыть ссылку напрямую.чтобы извлечь отчет, если это возможно.
Важно сказать, что сайт работает только в Internet Explorer, что затрудняет мне отладку кода и понимание, где sReturn назначено значение.
Извините, что беспокою вас в середине воскресенья, но с четверга я кружил вокруг, пытаясь разобраться в этом, и я просто не двигаюсь.
Большое спасиборебята.