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

Samenvoegen

Status
Niet open voor verdere reacties.

DJ.Funny

Gebruiker
Lid geworden
17 jan 2006
Berichten
113
Hallo allemaal,

Ik heb een probleem!!!! Ik heb een bestand dat heet bv xxx.504 Als ik dit open in notepad ziet dit er als volgt uit:

100;200;300
110;120;130

Nu wil ik in excel formules gebruiken waarmee ik bereik dat 100 in A1 komt te staan 200 in B1 300 in C1 enz enz tot en met 130 in C2

Als ik het betreffende bestand eerst open in excel en dan de verwijzing maak is het geen probleem, echter ik heb 500 van dergelijke bestandjes (met veel meer getallen ook) en om die nu allemaal eerst te openen heeft denk ik geen zin.

Kan dit sneller en middels een formule???? of macro?????

Alvast bedankt;)
 
ik veronderstel dat je deze getallen in een bestand "500.txt" zet.
De getallen moeten gescheiden zijn door bv een komma. 100,300,500

In een Excel-blad kun je dit bestand openen (openen *.txt) aanduiden dat er een komma als scheidingsteken gebruikt is.

Eventjes uit proberen
 
Sterker nog.... het scheidingsteken mag best een ; zijn. (File/Open, kies delimited en bij de volgende vraag kun je een ; aanvinken ---- ik heb dus een Engelstalige Excel maar je komt er vast wel uit zo)
Gewoon beginnen met een macro opnemen terwijl je zo'n bestand opent. Zie je perfect hoe het geprogrammeerd moet worden.
 
Dank jullie wel voor de snelle reactie, echter wat jullie schrijven is niet wat ik bedoel (waarschijnlijk de vraag onduidelijk gesteld (hoor ik op mijn werk ook vaak). Het probleem is niet het openen van het bestandje, dit vormt voor mij geen enkel probleem.

Ik zal het probleem wat proberen te verduidelijken: het betreffende bestandje wordt maandelijks gegenereerd door een boekhoudprogramma (voor wie het weten wil CASH). De naam van het bestandje ziet er altijd alsvolgt uit xxxx.601 dit wil zeggen administratienaam xxxx maand januari 2006 dus als ik dit in februari doe heet het bestand xxxx.602. Elke regel betreft eerste getal grootboekrekening tweede getal werkelijk omzet en het derde getal begrote omzet.
Nu wil ik een excel bestand maken wat deze getallen direct inleest uit het bestand xxx.601. Echter lukt het mij alleen maar als ik eerst het bestand open in excel en het daarna opsla als xxx601.xls.
Dit zou op zich niet zo'n probleem zijn ware het niet dat ik elke maand circa 50 van deze bestandjes heb dus bv aaaa.601, bbbb.601, cccc.601 enz enz enz.
Als ik deze eerst allemaal moet openen en daarna weer moet opslaan als enz enz dan ben ik daar niet alleen lang mee bezig maar neem de kans op fouten ook nog eens toe.

Wie weet de oplossing?????

Alvast bedankt!!!!!!!!!;)
 
Is de inhoud van die bestandjes altijd exact hetzelfde?
Er is op het forum wel vaker een macro gepubliceerd die alle bestanden in een bepaalde directory opent, kopiëert naar een verzamelbestand, het origineel weer sluit en de volgende opent enz.
Maar een voorwaarde is wel dat jouw textbestanden dezelfde opbouw hebben; anders wordt het een stuk ingewikkelder.
 
De inhoud is inderdaad altijd het zelfde, de macro zou een oplossing zijn. Helaas heb ik hem met search niet kunnen vinden. Iemand een idee!!
 
Deze macro werkte bij mij. Je moet jouw bewerking nog invoegen. (Ik heb de plaats blauw gemarkeerd) Je kan die eventueel met de macrorecorder opnemen.
Succes


Sub OpenEveryDirFile()
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'deze macro is (voor een deel) specifiek voor het importeren van gegevens uit
'veel, op dezelfde manier ingedeelde, Excelbestanden
'met dank aan Steve Aprahamian en het Helpmijforum
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dim strPath As String
Dim lFile As Long
Dim wkb As Workbook
Dim Source As String


' Application.ScreenUpdating = False
'zoek de juiste map op
strPath = Application.GetOpenFilename _
(Title:="Choose file in Folder to Document")
If strPath = "False" Then
MsgBox "Canceled by User"
Exit Sub
End If
Do Until Right(strPath, 1) = "\"
strPath = Mid(strPath, 1, Len(strPath) - 1)
Loop

With Application.FileSearch
.NewSearch
.LookIn = strPath
.SearchSubFolders = False
.MatchTextExactly = False
.FileType = msoFileTypeExcelWorkbooks
If .Execute() < 1 Then
MsgBox "There were no files found."
Exit Sub
End If

For lFile = 1 To .FoundFiles.Count
Set wkb = Workbooks.Open(Filename:=.FoundFiles(lFile), _
UpdateLinks:=False, ReadOnly:=True, _
IgnoreReadOnlyRecommended:=True)
‘hier moet je invoegen wat jouw bewerking is
wkb.Close (False)
Next lFile
End With
Set wkb = Nothing
ActiveWorkbook.Close SaveChanges:=True
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan