Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Vba para .net

Dúvidas gerais sobre Excel
Carlos algusto
Acabou de chegar
Acabou de chegar
Mensagens: 9
Registrado em: Seg Abr 20, 2020 11:11 am

Vba para .net

Mensagem por Carlos algusto »

Como uso loops em .net com o selenium, como no exemplo abaixo

While driver.IsElementPresent(por.ID("escondido"))
'espera por um segundo
'o uso do Application.Wait serve para não congelar a execução do VBA
Application.Wait Now + TimeValue("00:00:01")
Wend
'neste ponto, o elemento já deve estar presente
MsgBox driver.FindElementById("escondido").Text

Quando tento encontrar o elemento recebo 2 erros (is not boolean ou não faz parte de iwebdriver)

Um erro quando eu tento usando "while" como no exemplo, e o outro erro acontece quando uso "if, else"


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster »

Pode postar o código ou projeto?


Carlos algusto
Acabou de chegar
Acabou de chegar
Mensagens: 9
Registrado em: Seg Abr 20, 2020 11:11 am

Re: Vba para .net

Mensagem por Carlos algusto »

Dim driver As WebDriver
Public Sub test()
Set driver = New ChromeDriver
Call driver.SetProfile("C:\Users\etc...", True)
driver.Get "link"
While driver.IsElementPresent(by.ID("id"))
Application.Wait Now + TimeValue("00:00:01")
'ou driver.wait (100)
Wend
driver.FindElementById("id").click
If driver.IsElementPresent(By.ID("id")) Then
driver.IsElementPresentbyid("id").Click
Else: sendkeys "windos key+ print"
'ainda não sei o neme dessas teclas
End If
End Sub


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster »

Esse é o código VBA a ser convertido, certo?


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Carlos algusto
Acabou de chegar
Acabou de chegar
Mensagens: 9
Registrado em: Seg Abr 20, 2020 11:11 am

Re: Vba para .net

Mensagem por Carlos algusto »

Sim. Ainda não consegui refazer em . Net


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster »

Aqui um começo:

Código: Selecionar todos

Imports System
Imports OpenQA.Selenium
Imports OpenQA.Selenium.Chrome

Module Program
    Sub Main(args As String())
        Dim driver As IWebDriver
        Dim chromeOptions As New ChromeOptions()
        chromeOptions.AddArguments("user-data-dir=C:\Users\etc...")
        chromeOptions.AddArguments("--start-maximized")
        driver = New ChromeDriver(chromeOptions) With {
            .Url = "ttps://www.tomasvasquez.com.br"
        }
    End Sub
End Module
Vamos evoluindo a partir disso


Carlos algusto
Acabou de chegar
Acabou de chegar
Mensagens: 9
Registrado em: Seg Abr 20, 2020 11:11 am

Re: Vba para .net

Mensagem por Carlos algusto »

Desculpa a demora. Tive um problema no meu computador e só consegui ver a resposta agora.

Na verdade só estou tendo problema com os loops, todo resto do código eu consegui converter ou adaptar sem problemas


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster »

Carlos,

Uma pequena nuância no Visual Basic .NET é que o loop While é diferente:

VBA

Código: Selecionar todos

While condition  
    [ statements ]  
    [ Continue While ]  
    [ statements ]  
    [ Exit While ]  
    [ statements ]  
Wend
VB.NET

Código: Selecionar todos

While condition  
    [ statements ]  
    [ Continue While ]  
    [ statements ]  
    [ Exit While ]  
    [ statements ]  
End While
tudo é igual, exceto que o Wend vira End While. É isso?

Fonte: https://docs.microsoft.com/en-us/dotnet ... -statement


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder