Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Lotto: punt duizendtallen verwijderen  (gelezen 28787 keer)

0 leden en 1 gast bekijken dit topic.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #30 Gepost op: 22 november 2021, 11:25:33 »
Hij doet wel wel apart voor de uitslag en voor de winstverdeling, maar dat zou ook in één keer kunnen mits een kleine aanpassing, waardoor het manuele 'werk' redelijk zou meevallen.
Dag Molly , ik heb dit reeds aangepast zodat alles na het kopiëren in bereik "Z1 - AC10" in één keer wordt op de juiste plaatsen ingevoerd , dus de getrokken nummers komen in het bereik "D5-I5" en reserve in "K5" , de winst gegevens komen in het bereik "T8-T16" waarna de geïmporteerde gegevens worden gewist.
het is nu niet dat het een groot werk is , maar je kent me misschien al een beetje  ;D , ik wou weten of het "geautomatiseerd" kan....
ik ga je tip i.v.m. "Gegevens/Externe gegevens ophalen/Van web" eens bekijken...
Mvg,
Arnold.
   

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Lotto: punt duizendtallen verwijderen
« Reactie #31 Gepost op: 22 november 2021, 11:57:17 »
Dag Arnold,

Citaat
je kent me misschien al een beetje
Ik dénk het  ;)

Het zou kunnen dat we iets verschillend bedoelen. Me baserend op je laatste bijlage heb ik toch de indruk dat je manueel op 2 plaatsen van je werkblad gegevens plakt en pas daarna de verwerkingsmacro uitvoert. Bij JeanPierre zit het plakken in de macro.
In stappen:
1) met de eerste knop wordt de lotto-website geopend
2) manueel selecteren en kopiëren (vanaf dan staan de gegevens op het klembord)
3) terug naar Excel en de tweede knop klikken = plakken + verwerken

Bij JeanPierre punten 2 en 3 nog in afzonderlijke fases (trekking + winstverdeling), maar die kunnen we samenvoegen mocht het met webquery niet lukken.

Mvg,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #32 Gepost op: 22 november 2021, 12:10:01 »
aja , je brengt me op een idee : ik ga de gegevens in één keer kopiëren , plakken en dan het nodige er uit halen !
deze namiddag werk ik er aan , info volgt...
Arnold.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #33 Gepost op: 22 november 2021, 15:53:28 »
ppfftt , al de ganse namiddag er mee bezig..
ik heb de code (step4) van deze website gehaald en alles uitgevoerd zoals in de uitleg wordt gegeven : https://www.guru99.com/data-scraping-vba.html
waarom krijg ik die fout zoals bijgevoegd als screencopy ?
Mvg,
Arnold.


Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #34 Gepost op: 22 november 2021, 17:38:41 »
voila , de goeie raad van Molly opgevolgd en de procedure is nu een stuk eenvoudiger :
ga via de knop naar de website , kopieer het nodige (zie screencopy) en klik op het werkblad op de knop "Lotto gegevens invullen" en alles wordt mooi ingevuld , alles wordt op de achtergrond uitgevoerd.
het blad is standaard beveiligd (zonder wachtwoord) , bij alle handelingen (Eigen nummers invullen/Quick pick/sorteren) wordt de beveiliging tijdelijk opgeheven...
Mvg,
Arnold.

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Lotto: punt duizendtallen verwijderen
« Reactie #35 Gepost op: 22 november 2021, 17:55:14 »
Probeer het eens met deze

Sub tabelophalen()
 With CreateObject("InternetExplorer.Application")
    .Visible = True
    .Navigate "https://www.e-lotto.be/NL/drawGames/lotto/results/result/last"
   
     Do While .Busy Or .ReadyState <> READYSTATE_COMPLETE
      DoEvents
     Loop
     
     Set ieDoc = .Document
     Set ieTxt = ieDoc.getElementsByClassName("results")(0)
   
     ThisWorkbook.Sheets(1).Cells(5, 4).Resize(, 8) = Split(Replace(ieTxt.InnerText, "+", ""), vbCrLf)
    .Quit
 End With
End Sub

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Lotto: punt duizendtallen verwijderen
« Reactie #36 Gepost op: 22 november 2021, 18:25:29 »
Dag Arnold,

Eerst en vooral: ik heb de laatste suggestie van Veerj tussendoor ook eens geprobeerd, maar minstens bij mij wil het niet lukken. Hopelijk heb jij daar met je moderne voorzieningen meer geluk mee.

Wat jouw laatste versie betreft zie ik nog 2 zaken:
1) de datum zal op Historie maar juist worden verwerkt als je de macro uitvoert op de eerstvolgende dag na de trekking. Dat zou je kunnen in orde krijgen door die ook mee te kopiëren van de website
2) je winstverdeling staat ondersteboven, dat gaat heel lucratief worden  :D :D :D

Mvg,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Lotto: punt duizendtallen verwijderen
« Reactie #37 Gepost op: 22 november 2021, 18:27:45 »
@Molly, uit nieuwsgierigheid, krijg je ergens een foutmelding?

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #38 Gepost op: 23 november 2021, 07:51:29 »
Dag Veerj,
ik krijg onderstaande foutmelding bij het starten van de code , ik krijg eerst de code waarna de webpagina van de Lotto wordt geopend.
Mvg,
Arnold.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #39 Gepost op: 23 november 2021, 08:00:02 »
goedemorgen Molly ,
het foutje wat de winsten betreft is opgelost , door de winsten op een andere manier te importeren was de lus fout : de winsten op de website staan in volgorde van 6 gewonnen naar 1+ , in Excel staan ze van 1+ naar 6 gewonnen , dit is zo opgemaakt door JP en ik vind die opmaak goed.

wat die controle op de datum betreft : ik wilde vermijden dat als de uitslag er als staat op het blad "Historie" er dezelfde nog eens bijkomt.
ik neem nu de datum mee bij het kopiëren en vul deze in op het werkblad "Historie" en controleer nu of deze er al staat. Bedankt voor deze tip  _/-\o_

Mvg,
Arnold.

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Lotto: punt duizendtallen verwijderen
« Reactie #40 Gepost op: 23 november 2021, 08:25:53 »
De foutmelding is een bekend probleem, .busy icm .readystate loopt bij sommige niet helemaal soepel.
Je zou het zo eens kunnen testen:

Sub tabelophalen()
 With CreateObject("InternetExplorer.Application")
    .Visible = True
    .Navigate "https://www.e-lotto.be/NL/drawGames/lotto/results/result/last"
   
     Do While .Busy: DoEvents: Loop
     Application.Wait DateAdd("s", 4, Now)
     
     Set ieDoc = .Document
     Set ieTxt = ieDoc.getElementsByClassName("results")(0)
   
     ThisWorkbook.Sheets(1).Cells(5, 4).Resize(, 8) = Split(Replace(ieTxt.InnerText, "+", ""), vbCrLf)
    .Quit
 End With
End Sub

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #41 Gepost op: 23 november 2021, 09:55:58 »
Veerj , ik krijg de zelfde foutmelding....
maar ik heb op het web een code gevonden die werkt voor een bepaalde website en data , ik heb geprobeerd om die te gebruiken voor de Webpagina van de Lotto maar ik slaag er niet in...wil je eens kijken naar die code ?
Mvg,
Arnold.

Private Sub CommandButton1_Click()
' TeachExcel.com

Dim request As Object
Dim response As String
Dim html As New HTMLDocument
Dim website As String
Dim price As Variant

'Website to go to.
website = "https://finance.yahoo.com/quote/EURUSD=X?p=EURUSD=X"
[color=blue]'website = "https://www.e-lotto.be/NL/drawGames/lotto/results/result/last"[/color] : dit is de website van de Lotto die zou moeten gebruikt worden

' Create the object that will make the webpage request.
Set request = CreateObject("MSXML2.XMLHTTP")

' Where to go and how to go there - probably don't need to change this.
request.Open "GET", website, False

' Get fresh data.
request.setRequestHeader "If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"

' Send the request for the webpage.
request.send

' Get the webpage response data into a variable.
response = StrConv(request.responseBody, vbUnicode)

' Put the webpage into an html object to make data references easier.
html.body.innerHTML = response

' Get the price from the specified element on the page.
price = html.getElementsByClassName("Trsdu(0.3s) Fw(b) Fz(36px) Mb(-4px) D(ib)").Item(0).innerText

' Output the price into a message box.
MsgBox price

End Sub


Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Lotto: punt duizendtallen verwijderen
« Reactie #42 Gepost op: 23 november 2021, 10:11:18 »
Misschien dat het toch ligt aan een verschil in besturingssystemen.

Je moet per pagina de juiste objectnamen zien te vinden. In dit geval classname. Het zit ergens verstopt in het script achter de pagina.

Rechtermuisknop en dan iets als element controleren. Zo kom je bij het script.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Lotto: punt duizendtallen verwijderen
« Reactie #43 Gepost op: 23 november 2021, 10:35:11 »
Je moet per pagina de juiste objectnamen zien te vinden. In dit geval classname. Het zit ergens verstopt in het script achter de pagina.
Rechtermuisknop en dan iets als element controleren. Zo kom je bij het script.
ik denk dat ik zowat de ganse namiddag niets anders heb gedaan gisteren , vind het niet.....nu is niet zo erg maar vind het jammer , aangezien die code werkt met een andere website zou het volgens mij dan ook moeten lukken met de Lotto website , maar mijn kennis is niet groot genoeg.
toch bedankt voor het meedenken !
Mvg,
Arnold.

ps met Uw laatste code krijg ik wel een andere foutmelding...zie screencopy.
 

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Lotto: punt duizendtallen verwijderen
« Reactie #44 Gepost op: 23 november 2021, 11:18:52 »
En op welke regel krijg je die? Deze error heb ik zelf nog nooit gezien.

 


www.combell.com