• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opgelost Inladen van een .csv bestand dmv macro vereenvoudigen - vervolg

Dit topic is als opgelost gemarkeerd
@cow18
Bedankt voor het meedenken.
Een test geeft aan dat de data in de datumregel van 02-07-2025 gezet wordt en niet op 01-07-2025 .
Ook wordt er een tussenschermpje getoond met cijferreeksen en dat pas na aanklikken het script verder gaat. Qua verwerkingstijd een stuk trager.
 
@AHulpje,
Na wat bredere test kan ik melden dat je versie weer perfect werkt.
Ik ben je zeer erkentelijk.
Met dank!
 
oei, naar boven afgerond
klaar met alles in 0.15 seconden zonder msgbox !
(had wel nog niet gekeken om die oude csv's te verwijderen,maar dat stelt niet veel voor)
 

Bijlagen

end ie van ahulpje ?
 
de file opzoeken gaat sneller bij aHulpje,het inlezen gaat sneller bij mij, dus de combinatie ...
zodoende :
* combi = 0.04 sec
* BSALV = 0.3 sec
* aHulpje = 0.85 sec
die tijdsverschillen tussen jou en mij, het zal aan de processor liggen zeker ?
 

Bijlagen

Dat vermoeden heb ik ook.
Ik heb een nieuw HP Elite notebook met een Intel Core Ultra 5 processor en 16Gb geheugen.

Als ik de combi module aan mijn werkfile toevoeg en run krijg ik foutmeldingen.

Als ik de combi run in je xlsb bestand dan wordt het import bestand niet gevonden ofschoon ik de locatie daarvan in je script heb aangepast.
 
Laatst bewerkt:
En dat met dit warme weer. In de tijd die jullie besteden aan het uitzoeken welke versie sneller is kun je minstens tien jaar lang elke dag een bestand verwerken.;)
 
En dat met dit warme weer. In de tijd die jullie besteden aan het uitzoeken welke versie sneller is kun je minstens tien jaar lang elke dag een bestand verwerken.;)

Ik waardeer je bezorgdheid en ben het daar ook mee eens. Ik ben zeer tevreden met jouw oplossing.
Van de andere kant wil ik cow18 best helpen met zijn inspanningen.
 
ik was een beetje gepikeerd omdat Anton44 met een tijdsmelding van 3.46 sec kwam, wat in mijn ogen onmogelijk leek. Nu weet ik wel dat die tijdsmeldingen iets gek hebben. Doe de file open en doe de test en herhaal hem dan nog eens en je hebt een heel andere tijd. Herhaal hem dan nog 20 keer en je behoud de 2e tijd. Daarvoor heb ik voorlopig geen echte uitleg. (en datzelfde fenomeen heb je ook met aHulpje's macro)
Dus ja, die 3.46 was een trigger. Als je dan je code naleest, dan valt alles in 2 stukken uiteen, het stuk om de file en zijn duplicaten te zoeken en het stuk om de file in te lezen.

Als ik het stuk "Dir" vergelijkt, dan kiest aHulpje om de cvs-file en zijn 10 duplicaten individueel op te zoeken en ik koos alle cvs-files beginnend met die naam en aflopend gesorteerd op datum op te vragen. Bon, dat is als met een auto rijden en zolang alles goed gaat, vooral niet willen weten wat er onder de motorkap gebeurd. Zolang er geen 11e of 12e copie bestaat gaat aHulpje goed op en dat is zo als alle cvs-bestanden altijd netjes opgeruimd worden. Maar je zo zo maar eens de 9e kopie moeten laten staan. De eerstvolgende keer dat je de macro laat lopen gaat het dan 1 keer verkeerd. Idem voor mijn algemene benadering, ook daar zo de recentste csv-file met een zelfde begin van naam roet in het eten kunnen werpen. Bon, maar gezegd zijnde, als als alles goed gaat, kijk je niet onder de motorkap.

Dan heb je het stukje waar je de cvs-file inleest. Daar denk ik dat je al een vrij groot cvs-bestand zou moeten hebben om via aHulpje's methode voordeel te halen.

Slotsom, met de combi had je "the best of both worlds", alleen zat er daar nog iets niet lekker, ik vermoed dat er ook nog een stuk path in die Range("CSVbestand") staat/stond. Nu weet ik niet hoe ik je reactie van aHulpje moet interpreteren. Ik vond die voldoende om te zeggen, laat maar. Dus bij deze heb ik je even het kader geschetst. En tijdsmetingen zijn dus niet zaligmakend en zijn voor interpretatie vatbaar.
 
@cow18,
Bedankt voor je uitleg.
Waarom gepikeerd? Het was een schermafdruk van het resultaat en ja ook ik heb de ervaring dat tijdmetingen discutabel/onnauwkeurig zijn.
Toen ik de combi niet direct aan het draaien kreeg en van jouw geen reactie daarop kwam had ik niet meer zo veel zin om met combi verder aan de slag te gaan. Temeer omdat ik een goed werkende oplossing heb.
Ik sta nog steeds open voor een goed werkende Combi oplossing.
 
Laatst bewerkt:
@cow18,
In het kopblad staat de downloadlocatie en de naam van het downloadbestand elk in een cel met de namen resp. "D:\Downloads" en "power-chart-data.csv"
Ik vermoed dat in het combi-script de downloadlocatie niet verwerkt is ??
 
inderdaad niet, zie bijlage, path en csv staan bovenin het blad.
Met een fantasietje dat bij het openen (thisworkbook.open) direct die csv-file gecheckt wordt
Tijdsmeting op dergelijk minimale periode is louter informatief, foutmarge tov gemeten waarde is te groot
 

Bijlagen

@cow18
Zie mijn commentaar niet als persoonlijke aanval of kritiek op jouw code, niets op aan te merken, er zijn vele wegen die naar Rome leiden. Het meten van verwerkingstijden voor acties die een keer per dag worden uitgevoerd en slechts een fractie van een seconde duren vond ik wel grappig.
 
Bedankt.
Bijna helemaal goed.
Het bestand wordt gevonden en bewerkt alleen is er nog geen "einde".
De cursor blijft lopen.
(bewerkingstijd alleen ter info ;))

Screen-20250703_1303-02.jpg
 
Met het déactiveren van "thisworkbook.open" is het cursorprobleem opgelost.

Hoe kan ik het afronden van de waarden realiseren?
En die voor de tijd zonder sec?

3.958,82 -> 3.959 / 13:15:00 -> 13:15
Screen-20250703_1322-03.jpg
Opgelost door onderstaande regel aan te passen en
Blijft over: tijd zonder sec en celopmaak in te stellen als "centreren"
Code:
.Cells(rij, 15) = Round(x(2), 0)   'max waarde afgerond op 0 cijfers
 
Laatst bewerkt:
Na wat speurwerk met try and error alle probleempjes kunnen oplossen.
Bedankt!
 
Ik juich misschien wat te snel.
Nu ik het combi-script in mijn eigen bestand heb geplaatst wordt er geen downloadbestand gevonden als dat niet in dezelfde map staat als het Excel bestand.
Mijn path en csv gevens staan in een ander tabblad (="kopblad) dat het blad waar de gegevens ("energie") ingevuld moeten worden. Plaats ik nu path in het kopblad "energie"dat werkt het wel maar dit is niet voor mij de gewenste oplossing.
Hier vind ik niet de oplossing voor.

Het lijkt te maken te hebben met een opslag in het geheugen van de laatst locatie (van Excel) .
Een oudere versie van mijn databestand vond wel de downloadlocatie waarna de Combi ook de juiste locatie vond.
Is deze "geheugenopslag" te voorkomen ?
 
Laatst bewerkt:
Terug
Bovenaan Onderaan