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

GROTE .txt bestanden importeren

Status
Niet open voor verdere reacties.

Trace7r

Gebruiker
Lid geworden
18 okt 2007
Berichten
81
Ik wil een .txt bestandje importeren in Excel, klein probleempje is dat het bestand maar liefst 576MB groot is....
Dan spreek ik over een 4.000.000 regels terwijl Excel 2007 net over het 1.000.000 stopt met importeren.
In de help staat dat ik dat bestand moet openen met Word maar dat is geen oplossing, Word krijgt het bestand niet geladen.
Ik heb al gebruik gemaakt van een filesplitter (WonderWeb FileSplitter) maar die durft de eerste file wel eens verkeerd weg te schrijven waardoor ik data verlies.
Zelfs al werkt dat wel dan zit ik nog met een hoop verschillende bestanden.

Het is wel zo dat ik eigenlijk niet alle data nodig heb, ik heb producten die een unieke nr hebben en voor elk product staat er in die file een URL dus wil ik eigenlijk in dat supergroot .txt bestand die URL zoeken.
Dus ik dacht, zet dat even om naar .xlsx en dan kan ik daar gewoon in zoeken met formules, maar dat blijkt nu toch niet te werken...

Ik heb steeds een vert.zoek functie gebruikt om de gegevens uit een xlsx bestand te krijgen maar ondertussen heb ik toegang gekregen tot een veel grotere cataloog met het gekende probleem tot gevolg.

Dus als iemand een oplossing weet met Excel zelf, gooi het hier maar in de groep :cool:

Alvast bedankt voor de reacties....
 
Geef eens een representatief stuk uit die text file, zowel data als layout. (wel anonieme data uiteraard). Evenzo een opgave van hoe je het zou willen hebben als resultaat.

Wie weet is er met VBA wel wat mogelijk.

Wigi
 
Volgens mij is acces hier wel een mooie oplossing voor. TXT importeren, Query maken en dan query exporteren: Klaar
 
Je maakt het je zelf onnodig moeilijk

Code:
Sub simpel()
  open "C:\voorbeeld.txt" for input as #1
     sn=filter(split(Input(LOF(1),#1),vbcrlf),"http")
  Close #1

  sheets(1).cells(1,1).resize(ubound(sn)+1)=worksheetfunction.transpose(sn)
End Sub
 
Hierbij een textfile met 5 producten met een datasheet-url en 3 afbeelding URLs en nog wat andere info.
Per product wil ik in excel bvb de Thumb URL en de HIGH image url in een cell steken. dus ik moet die zoeken in de txtfile en in het resultaat in de juiste cellen zetten.

Merk op dat ik dus ofwel uit één hele grote txt file de gegevens haal of uit verschillende kleine.

Hoop dat ik het zo nog iets duidelijker maak.

Groeten Trace7r.

Ps ik heb deze reactie wel geschreven vooraleer ik alle andere reacties doorgenomen heb omdat Wigi allereerst al een voorbeeld vroeg en ik hoop dat ik hier voldoende mee tegemoet kom.
 

Bijlagen

Laatst bewerkt:
Dit werkt prima bij mij:

Code:
Sub simpel_Wigi()
    Open [B]"C:\Test1234.txt"[/B] For Input As #1
    sn = Filter(Split(Input(LOF(1), #1), vbCrLf), "http")
    Close #1
    
    c0 = "Resultaten"
    For i = 1 To 2
        For l = LBound(sn) To UBound(sn)
            c0 = c0 & "§" & Join(Filter(Split(sn(l), Chr(9)), "/" & Choose(i, "high", "thumbs") & "/"), "§")
        Next
    Next
    sq = Split(c0, "§")
    [A1].Resize(UBound(sq) + 1) = WorksheetFunction.Transpose(sq)
End Sub
 
of als de struktuur is zoals in jouw voorbeeldbestand
Code:
Sub simpel_snb()
  Open "C:\Test1234.txt" For Input As #1
    sn = Filter(Split(Input(LOF(1), #1), chr(9)), "/high/")
  Close #1
    
  For j = LBound(sn) To UBound(sn)
     sn(j)= sn(j) & "|" & replace(sn(j),"/high/","/thumbs/")
  Next
  [A1].Resize(UBound(sq) + 1) = WorksheetFunction.Transpose(sq)
End Sub
 
Laatst bewerkt:
Bedankt al voor de reacties, ik ga het zo snel mogelijk testen en dan laat ik nog wel iets horen.

Groeten, Trace7r.
 
Ik heb een klein probleempje ondervonden.

sn = Filter(Split(Input(LOF(1), #1), chr(9), "/high/")

Geeft een foutmelding, Input zou geen argument zijn van Split, InputBox wel, maar dat is hier niet van toepassing.

Ik gebruik Office 2007 misschien dat dat iets verklaard.

Groeten, Trace7r.
 
Laatst bewerkt:
Het gaat goed met 1 haakje meer:

sn = Filter(Split(Input(LOF(1), #1), chr(9)), "/high/")
 
Ik heb de file in 10 verdeeld dus +-60Mb per stuk en dan is het haalbaar met de voorgeschreven code.
Maar nu heb ik nog een ander vraagje.
Het testbestand bevat alle afbeeldingen en andere gegevens van 6 producten, ik heb dus een xlsx file waar ik bijvoorbeeld een product in heb zitten met het "product id" 722E-H390W-NL dit komt overeen met het product 13 in de Test1234.txt file.
Dus wil ik 2 cellen achter de productgegevens in mijn xlsx file met:
1 de "HIGH" resolutie afbeeldings url
2 de "THUMB" afbeeldings url

Al de andere gegevens uit de Test1234.txt file heb ik niet nodig.

Bij 2 xlsx files zou je de horizontale zoekfunctie kunnen gebruiken, maar met een txt file weet ik dat niet juist.

Groeten,

Trace7r.

Sorry voor de late reactie.
 
Laatst bewerkt:
Trace...

Dit moet je aan Access overlaten die is daar veel beter in om met zulke hoeveelheden data om te gaan.
Ik zelf importeer met regelmaat grote hoeveelheden data in acces en dat gaat met niks.
2 bestanden bezitten elk meer dan 50000 regels en met een "blink of the eye" is het gebeurd.
 
Sorry Superzeeuw,

Uiteindelijk had ik een voorlopige oplossing gevonden en heb ik het vorige aangepast en de volgende vraag gesteld.
Ik ben niet zo bekend met Access en wil er dan ook liefst niet direct mee beginnen...
Het is te zeggen, als het uiteindelijk toch de meest efficiente manier lijkt kan het er natuurlijk altijd van komen...

Alvast heel hartelijk bedankt voor uw reactie, als je een voorbeeldje kan geven of mij overtuigen van access ben ik uiteraard één en al oor. :cool:

Groeten,

Trace7r.
 
Hierbij 2 voorbeeld bestanden die op elkaar afgestemd zijn.
Dus die xlsx file bevat eigenschappen van producten en de TestUrl.txt file bevat links naar de afbeeldingen van die producten.
Dus moet ik in de xlsx file de afbeelding URLs toevoegen afhankelijk van welk product het is.

Je moet echt wel gaan zoeken, want je kan niet zomaar zeggen dat je de urls uit de txt file neemt en die kopieert naar de xlsx file, want ze moeten uiteraard wel bij het juiste product staan ;)

Groeten,

Trace7r.
 

Bijlagen

Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan