du behøver slet ikke sådan noget voldsomt noget, problemet ligger i at du har en dansk windows / Excel der ikke forstår , som seperator men forventer et semikolon, så du kan enten bytte alle komma ud med semikolon eller du kan tilføje følgende på første linje i din csv fil: sep=,
Synes godt om
Slettet bruger
30. oktober 2014 - 12:04#2
Jeg får desværre bare det samme ud. Det hele i en celle.
Min excelkode ser sådan her ud
var workbook = new XLWorkbook(); var worksheet = workbook.Worksheets.Add("Time");
Hvad sker der hvis din fil ser som du som følger du du bare åbner det almindeligt i Excel? Så vil den åbne som du forventer, forstår ikke helt hvorfor du vil bruge VBA kode til at åbne en csv fil?
VBA : Option Explicit Dim antalRækker As Integer, tabel As Variant, ræk As Integer, ix As Integer Public Sub opsplit() 'fordeler indhold i kolonne A til højre antalRækker = ActiveCell.SpecialCells(xlLastCell).Row
For ræk = 1 To antalRækker tabel = Split(Range("A" & ræk), ",")
For ix = 0 To UBound(tabel) Range("B" & ræk).Offset(0, ix) = tabel(ix) Next ix Next ræk End Sub
Synes godt om
Slettet bruger
30. oktober 2014 - 12:43#5
det er ikke VBA? Men derhen ad, men er noget der er lavet til C#
Jeg forstår slet ikke dit problem, vil du gerne have et svar på hvordan din C# kode skal se ud eller vil du have Excel til at åbne en csv fil korrekt??? ved at angive seperator kan den altså godt åbne det som forventet
Synes godt om
Slettet bruger
30. oktober 2014 - 13:03#9
Jeg vil have svar på hvordan jeg får den til at smide mine CSV linier over i excel, hvor det er delimited.
Jeg kan ikke få den til at delimit det hvis jeg skriver sep=; eller ,
Så hvordan skal koden se ud hvis du siger seperator virker?
Jeg kan lige paste hele min kode.
public void Button_Click(object sender, RoutedEventArgs e) { List<string> csvlines = new List<string>(); List<string> lists = new List<string>();
try { using (StreamReader sr = new StreamReader(@"C:\Users\" + username + "\\Desktop\\TimeTracking.txt")) { string currentLine;
while ((currentLine = sr.ReadLine()) != null) { csvlines.Add(currentLine);
ahhhhhh, du gemmer det hele i en xlsx fil, den kender ikke til komma seperering, prøv lige at gem som .csv istedet
Synes godt om
Slettet bruger
30. oktober 2014 - 13:12#12
Ahead of you :=) Har lige prøvet at gemme den som CSV. Men med samme resultat - bortset fra hvis man åbner filen direkte, så kan excel selv finde ud af at delimit den.
Men hvis jeg åbner excel filen efter har indsat, står det hele stadig på samme linie.
Drop hele din worksheet konvertering og hold dig til strenge, det andet giver bare bøvl hvis du alligevel ikke skal bruge nogle af funtionerne fra regnearket
xlsx formatet er ihvertfald noget rod hvis du ikke skal bruge funktionerne, så er csv til at forstå, håber du fik det til at fungere nogenlunde som tiltænkt :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.