ATENÇÃO NOVOS USUÁRIOS

Se registrou recentemente? Seu cadastro será avaliado e mendiante aprovação, a conta será ativada e você poderá usufruir do fórum. O tempo de avaliação gira em torno de 24 a 48 horas.

Esqueceu sua senha?

Você pode usar o mecanismo de lembrete neste link: Recuperar senha

Você receberá um link de reativação no email cadastrado.

Não recebeu o email? Lembre-se checar o Lixo Eletrônico.

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 » Seg Mai 04, 2020 11:22 pm

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: 2796
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster » Ter Mai 05, 2020 12:21 am

Pode postar o código ou projeto?


Tomás
https://www.tomasvasquez.com.br/blog
https://www.tomasvasquez.com.br/cursocsharp
https://twitter.com/tomamais
Se sua dúvida foi solucionada, acrescente [RESOLVIDO] ao título.

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 » Ter Mai 05, 2020 7:57 pm

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: 2796
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster » Ter Mai 05, 2020 11:13 pm

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


Tomás
https://www.tomasvasquez.com.br/blog
https://www.tomasvasquez.com.br/cursocsharp
https://twitter.com/tomamais
Se sua dúvida foi solucionada, acrescente [RESOLVIDO] ao título.

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 » Qua Mai 06, 2020 8:07 am

Sim. Ainda não consegui refazer em . Net



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

Re: Vba para .net

Mensagem por webmaster » Sex Mai 08, 2020 11:30 am

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


Tomás
https://www.tomasvasquez.com.br/blog
https://www.tomasvasquez.com.br/cursocsharp
https://twitter.com/tomamais
Se sua dúvida foi solucionada, acrescente [RESOLVIDO] ao título.

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 » Sex Mai 15, 2020 11:52 pm

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: 2796
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Vba para .net

Mensagem por webmaster » Sáb Mai 16, 2020 12:35 pm

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


Tomás
https://www.tomasvasquez.com.br/blog
https://www.tomasvasquez.com.br/cursocsharp
https://twitter.com/tomamais
Se sua dúvida foi solucionada, acrescente [RESOLVIDO] ao título.

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