Ich habe folgendes Problem: Ich möchte per Klick auf einen commandButton eine CSV Datei auswählen und die darin enthaltenen Daten (eine Matrix) in meine aktuelle Arbeitsmappe kopieren, sodass ich nachher damit arbeiten kann.
Ich habe zwar schon ein paar Mal etwas programmiert, wo man Dateien über ein Dialogfeld öffnet und kopiert, aber noch nie eine CSV Datei. Das Problem bei dieser ist ja, dass die Spalten bei uns durch ein Semikolon getrennt sind, in Amerika aber durch einen simplen Beistrich und Excel das Semikolon nicht als Trenner versteht, wenn man es über ein Makro aufmachen möchte. Das heißt, dass ich die ganze Zeile in einem durch in einer Zelle stehen habe und nicht auf die verschiedenen Spalten aufgeteilt. Ich muss ihm also irgendwie klar machen, dass er das Semikollon als Delimiter ansehen soll. Makroaufzeichnungen helfen in diesem Fall leider absolut nicht weiter und aus den Beiträgen im Internet werde ich nicht ganz schlau. Vielleicht kann mir ja hier jemand helfen.
Mein Code ist noch sehr simpel und sieht momentan so aus:
Dim name, b As String
Dim source As Workbook, ws1 as Worksheet
b = "Import"
name = Application.GetOpenFilename()
If name "Falsch" Then
Set source = Workbooks.Open(name)
Set ws1 = source.Worksheets(1)
With ws1
.Cells.Copy ThisWorkbook.Worksheets(b).Cells
source.Close
Application.CutCopyMode = False
End With
End If