automatisch gegevens kopiëren

Status
Niet open voor verdere reacties.

jan excel

Gebruiker
Lid geworden
4 mrt 2007
Berichten
437
Hallo Experts,

In de een standaard excel file wil ik de gegevens van een file (test.csv) automatisch in kopiëren.
Echter dit lukt mij niet omdat de gegevens niet netjes per kolom worden weer gegeven als ik dit via een macro wil doen. (upload button)
Als ik het csv bestand open in excel op de gebruikelijke wijze dan worden de gegevens wel per kolom zichtbaar.

Standaard excel file is voorbeeldhlpmij 1.1

CSV file is test.csv ,deze heb ik met winrar gecomprimeerd naar een zip bestand, deze dus eerst weer uitpakken. (een csv extensie kon ik niet plaatsen vandaar zip bestandje gemaakt)


Zie toegevoegde excel file's dan wordt e.e.a. wel duidelijk denk ik.

Wie weet hoe ik de gegevens wel automatisch kan in kopieren met behoud van de kolom indeling.

Alvast bedankt.
Jan .
 

Bijlagen

  • voorbeeldhlpmij 1.1.xlsm
    23,4 KB · Weergaven: 24
  • test.zip
    485 bytes · Weergaven: 34
Test deze eens in je Excel bestand Jan.
Code:
Sub hsv()
With Sheets("data").Cells(1).CurrentRegion
 .AutoFilter 1, "<>" & .Parent.[a1]
 .Copy Sheets("overzetten").Cells(2, 1)
 .AutoFilter
 End With
End Sub
 
Hoi Allen,

HSV bedankt voor je script deze werkt goed.

Alleen had ik een andere vraag.
In vorige bericht heb ik een zip bestandje toegevoegd, als je deze uitpak krijg je een test.csv bestand te zien.
Dit is het bestand die k automatisch wil uploaden in voorbeeldhlpmij 1.1. bestand.
Het rare is dat als de file test.csv in excel open zonder macro dan krijg ik de juiste layout zoals in tabblad data.

Echter als ik de test.csv open via een macro krijg ik de foute layout, deze heb ik in Blad1 geplakt van het bestand voorbeeldhlp 1.2.
Deze macro hangt onder de upload knop, deze opent alleen de test.csv file en dan zie je de verkeerde layout.

Weet iemand hoe ik dit kan oplossen !!


zie bijlage : voorbeeldhlpmij 1.2.

Bekijk bijlage voorbeeldhlpmij 1.2.xlsm

Het zip bestandje staat in mijn vorige bericht



test.csv
 
Ipv de csv eerst te openen kan je deze rechtstreeks in de tab data importeren. Bv zo

Code:
Sub VenA()
With Sheets("Data")
    .Columns("A:G").ClearContents
    With .QueryTables.Add(Connection:="TEXT;E:\testen\test.csv", Destination:=Range("$A$1"))
        .TextFileSemicolonDelimiter = True
        .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1)
        .Refresh BackgroundQuery:=False
    End With
End With
End Sub
 
Als in de array alleen maar de default-type staat, kun je dit....
Code:
 .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1)
....achterwege laten.
 
Beste V&A en HSV,

Bedankt voor jullie reactie.
De code impoerteerd nu rechtstreeks de data volgens script V&A echter nog niet in kolom indeling.
De indeling blijft gelijk zoals in blad1 van het bestand voorbeeldhlpmij

Weten jullie d eoplossing ?

m.v.g.
Jan E
 
Werkt hier overigens prima Jan.
 
Jouw bestand wordt gescheiden door een , ipv een ;. Zie de tab Blad1 kolom B in jouw voorbeeldbestand.

Neem even een macro op om het bestand te importeren. Deze is dan wel weer aan te passen naar een iets leesbaarder formaat.
 
Als je het bestand wilt openen met een macro i.p.v. handmatig.
Code:
Sub hsv()
 Workbooks.OpenText "E:\Testen\test.csv", , , xlDelimited, , , , True, , , , , , , , , , True
End Sub
 
Hoi V&A en HSV,

Het is gelukt dankzij jullie inbreng.

Veel dank hiervoor en prettige feestdagen.
Jan E
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan