Xlsx zu csv in access

Hallo alle miteinander!

Ich habe folgendes Problem:

Ich habe ein ein csv File, welches ich in Access importiere, einige abfragen mache, diese in excel tabelle exportiere (xlsx files)!

In diesen xlsx files mache ich mehrere berechnungen!!
Dieses File möchte ich wieder ins Access importieren, da aber immer wieder fehler auftreten, da in einigen zellen oft „ein leerer inhalt scheint, aber eine formel enthalten ist, also z.B. =wenn(A34032=“";"";K34023*0,5)

Deshalb bräuchte ich ein Makro im Access, welches mir die vorher exportierte tabelle ins excel, von xlsx zu csv umspeichert, welche ich dann wieder problemlos in access importieren kann!

Vielen Dank

Ist das nicht sinvoller das gleich in der Datenbank zu machen ?
Ich find das reichlich umständlich den weg über exporte zu gehen .
Warscheinlich nimmst du das Excel weil du mit der Programmierung der Datenbank nicht klar kommst (kann man sich ja nicht zusammen klicken) , richtig ?

Ich kann aber nur empfehlen es direkt in der Datenbank zu organisieren .
Weil Deine leeren Felder werden sich ja nicht automatisch füllen .
Was soll also das Makro ändern ? Datensatz ist Datensatz .

Wie wäre es sonst mit einem 2 Tabellenblatt die nur referenziert auf das original Blatt und dann dort die Fehlenden sachen gleich ergänzen lassen.

Oder halt Datenbank dafür nutzen , dafür ist doch SQL und so alles vorhanden . Auch kannst Du in Access dir die gleiche Tabelle anlegen wie in Excel (sind ja auch nur Tabellen) .

Klingt irgentwie so als wolltest du den Bagger nicht nutzen und fragst wie du nun den Berg wegschaufeln kannst.

Ach ja und Wenn du aus Excel eine CVS machen willst, wäre es nicht schlauer im Brett Tabellen… zu fragen, weil hier ist Access und nicht Excel angesagt … Ich glaub sogar dort war dein vorgägner gerade letzte woche am Fragen wie man CVS dateien erzeugt aus Excel mit VBA .

Ich glaub da gings auch um CVS hin und her exportierrei
/t/frage-mehrere-csv-dateien-in-eine-excel-tabelle/6…

danke aber die berechnungen die ich mache, sind zu kompliziert im vba, weil sie schon im excel relativ schwer sind!!!

der thread ist nicht im excel, weil ich die umspeicherung von xlsx auf csv direkt als vba im access aus machen will!!! deshalb! einfach ein makro ausführen und er soll es mir umspeichern oder ein 2tes mal als csv speichern!!

Hallo,

danke aber die berechnungen die ich mache, sind zu kompliziert
im vba, weil sie schon im excel relativ schwer sind!!!

Na, was ist für Dich „schwer“ ?

der thead ist nicht im excel, weil ich die umspeicherung von
xlsx auf csv direkt als vba im access aus machen will!!!
deshalb! einfach ein makro ausführen und er soll es mir
umspeichern oder ein 2tes mal als csv speichern!!

Was bringt CSV (außer einer evtl. möglichen Importspezifikation) , wenn Daten schon falsch sind?

Sorg halt beim Ursprung dafür, dass ein erwartetes Rechnenergebnis numerisch und kein Text ist:

=wenn(A34032=""; 0 ;K34023*0,5)

Viele Grüße vom Bodensee
Franz, DF6GL

Na, was ist für Dich „schwer“ ?

ich kopiere mal einige formeln!!

=WENN(A2="";"";WERT(RECHTS(A2;8)))

A2 2009-12-31 23:15:00 und ich möchte die uhrzeit ausgeben, also bekomme ich als ergebnis Q2= 0,96875, eine zelle rechts davon dann =Q2 und die zelle als uhrzeit formatiert

=(WENN(D2=„H0“;H2;(WENN(D2=„B1“;I2;(WENN(D2=„G1“;J2;(WENN(D2=„G2“;K2;(WENN(D2=„G3“;L2;(WENN(D2=„G4“;M2;(WENN(D2=„L0“;N2;(WENN(D2=„L2“;O2;(WENN(D2=„ULB“:stuck_out_tongue_winking_eye:2;""))))))))))))))))))

hier habe ich zb 9 spalten (profile, also H0, B1, G1, G2, G3, G4, L0, L2, ULB) mit werten, und je nachdem was ich ins excel exportiere, habe ich ein anderes profil (welches sich in D2 befindet!, und deshalb möchte ich die werte von dem profil, welche gerade exportiert worden sind, ausgegeben haben!!

=WENN(A2="";"";MITTELWERT(B2:B5)) (und dann runtergezogen, also immer der mittelwert von 4 zellen, meiner meinung im vba schwer zu lösen)

Was bringt CSV (außer einer evtl. möglichen
Importspezifikation) , wenn Daten schon falsch sind?

ja eben, es wird ein importfehler angezeigt!!! und das ist mit csv dann nicht mehr der fall!!!

Sorg halt beim Ursprung dafür, dass ein erwartetes
Rechnenergebnis numerisch und kein Text ist:

=wenn(A34032=""; 0 ;K34023*0,5)

ja, aber ich habe wenn ich von access ins excel exportiere immer zwischen 33800 und 35040 zeilen, und die formeln habe ich eben bis zum maximalwert gezogen, sodass ich nicht manuell immer nachziehen muss!!!
und wenn jetzt 0 drinsteht, und ich es wieder ins access zurück importiere, sind dort auch nullen,
ich mache aber von der importierten datei wieder eine abfrage und die nullen würden solch ein ergebnis verfälschen

danke für ´deine (eure) mühen!!
lg Luca

Hallo,

wenn ich das so lese, erzeugt das bei mir leichtes Grausen ob dieser Berechnungs-Methodik und Vorgehensweise… :wink:
Da ist m. E. die Basis schon mehr als morsch.

Wie auch immer, speichere halt das Excel-Sheet im CSV-Format ab und importiere dieses Datei nach Access. Aus Access heraus kann eine Tabelle ebenfalls im CSV-Format exportiert und dann in Excel eingelesen werden. Ob das Ganze dann manuell oder per Code vonstatten geht, ist egal.

Ich sag es aber nochmal: Wenn Du nicht auf korrekte Datentypen(!, nicht Formate!) bei Access achtest, geht der Schuss immer wieder nach hinten los…

Viele Grüße vom Bodensee
Franz, DF6GL

oke, ja für die grunddaten kann ich nichts dafür!!
ich bin nur der der sie weiterverarbeiten soll xD …

also einfach einmal manuell ins csv umspeichern (in excel)!
dann per access importieren! aber bei den import makros im access steht csv nicht zur verfügung??

vielen dank für deine hilfe!!
mfg Luca

Hallo,

oke, ja für die grunddaten kann ich nichts dafür!!
ich bin nur der der sie weiterverarbeiten soll xD …

Mein Mitgefühl… (ernst gemeint)

also einfach einmal manuell ins csv umspeichern (in excel)!
dann per access importieren! aber bei den import makros im
access steht csv nicht zur verfügung??

Natürlich gibt es "Transfertext mit „csv“ (----> Textdatei mit Trennzeichen. csv: character separated values, oder auch comma separated values)

Viele Grüße vom Bodensee
Franz, DF6GL

oke, er importiert mir derwegen die leeren zellen mit, zwar ohne importfehler, aber dann halt ;;;;;;;;;;;;;;;;;;

ich werde wohl ums händische nicht drumherum kommen, wobei es mittlerweile sowieso wieder in den sternen steht, ob die diese abfrage noch benötige!!

danke für deine mühen!!
lg vom wörthersee :smile: