• 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.

Laatste regel van meerdere excel-bestanden inlezen

  • Onderwerp starter Onderwerp starter jansm
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

jansm

Gebruiker
Lid geworden
2 apr 2014
Berichten
421
Mijn datalogger produceert dagelijks een .csv (excel) bestand. Deze files krijgen een 'datum'-filenaam, bijvoorbeeld 2014-3-27.csv. Nu wil ik een 'verzamel'-excel bestand maken die van al deze 365 files de laatste regel importeert. Wie kan mij hier bij helpen?
Mvg, Jan
 
Een CSV bestand is een normaal tekst bestand. Wat je wilt is niet zo moeilijk om in VBA te maken.
 
Hallo Edmoor,
Wil je het voor mij doen? Welke gegevens heb je nodig van mij?
 
Laatst bewerkt door een moderator:
Ik wil weleens kijken. Heb je die bestanden allemaal in 1 map staan? Kun je me aan 2 voorbeeld bestandjes helpen?
 
bedankt voor jouw reactie.
De dag-bestanden bestaan normaal uit 1000-1500 regels. Het is dus de bedoeling dat van elk dag-bestand de laatste regel in een ander excel-bestand worden ingelezen. De dag-bestanden staan in dezelfde folder.
Ik werk met Excel2010.
 

Bijlagen

Dat zijn standaard Excel documenten en geen CSV bestanden waar het me om ging.
 
Bij het uploaden krijg ik de melding ". csv geen geldig bestand"
 
Laatst bewerkt door een moderator:
Je kunt een paar van die CSV bestandjes in een ZIP file inpakken en dan de zip hier plaatsen.
 
Dat zijn de juiste :) Ik denk niet er voor het weekend tijd voor te hebben, maar je hoort van me.
 
Bij deze mijn idee erover. Na een druk op de Importeren knop wordt er een nieuw document gemaakt met daarin de laatste regel van ieder gevonden .csv bestand. Geef wel even in C7 aan in welke map je .csv bestanden staan. Alleen .csv bestanden waarvan de naam een datum is worden behandeld. Het resultaat bestand kun je dan opslaan zoals je zelf wilt en dan sluiten. Je bent dan weer in bijgevoegd document. E.e.a. is quick and dirty gemaakt maar als je het maar 1x per jaar nodig hebt voldoet dit denk ik wel.

Bekijk bijlage EdmoorJansm.xlsm
 
Laatst bewerkt:
Edmoor, hij kan wel quick en dirty zijn maar hij werkt perfect. Zou je toch een aanpassing/verbetering kunnen doen? Dat is eenmaal een kopregel importeren. Deze zijn van iedere tabel(file) hetzelfde. Dus van de eerste in te lezen file de eerste en de laatste regel importeren zou mooi zijn.
Alvast heel erg bedankt!!!
 
Prachtig! Als je tijd/zin hebt: is het mogelijk om de te importeren regel variabel te maken (op tijd, bijv 13:00)?
 
zou dit niet voldoende zijn ?

Code:
Sub tst()
    Open "G:\receipts.txt" For Input As #1
        Do While Not EOF(1)
            Line Input #1, c00
        Loop
     Close
     
     MsgBox c00
End Sub

of

Code:
Sub tst_1()
    Open "G:\receipts.txt" For Input As #1
        sn = Split(Input(LOF(1), 1), vbCrLf)
     Close
     MsgBox sn(UBound(sn) - 1)
End Sub
of
Code:
Sub tst_3()
    sn = Split(CreateObject("scripting.filesystemobject").opentextfile("G:\receipts.txt").readall, vbCrLf)
    MsgBox sn(UBound(sn) - 1)
End Sub
 
Laatst bewerkt:
Prachtig! Als je tijd/zin hebt: is het mogelijk om de te importeren regel variabel te maken (op tijd, bijv 13:00)?

Iets met vinger en hele hand ;) Kijk eens naar de routine die de regels uit de bestanden leest. Daarin kun je bepalen welke regel terug moet worden gegeven. Mocht je er niet uitkomen dan wil ik nog weleens kijken maar dan heb ik wel een duidelijkere beschrijving van de wens nodig.
 
Heb slecht nieuws voor jou. Ik heb er 2, dus ben nog lang niet aan het eind van mijn latijn!
OK man. Ik ga zoeken/proberen en kom bij je terug. Dank je.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan