Excell Datei in kommagetrennten CSV Datei umwandeln. Dabei müssen Textfelder in Anführungszeichen stehen?

...komplette Frage anzeigen

4 Antworten

warum ist jetzt meine AW verschluckt worden? Nochmal kurz:

Das µ geht auch kürzer, wenn Deine xl-Datei verändert werden darf. Bleibt allerdings xl-intern, also noch ohne als CSV speichern.

Setze, wenn Textformeln drin sind, diese zu Werten um. Ggf werden Datumsformeln, die zB November als Komponente ausgelagert haben, durch die " falsch, sehr selten)

Ersetze dann evtl vorhandene " durch ein seltenes Zeichen, zB Ï (äusserst selten!) (Begründung im Link von f5f5f5). Dann:

Alt+F11, im Editor-Menü Einfügen, Modul. Dahinein kopierst Du folgendes Makro:

  • Sub AnfZ_umTextSetzen() '(verändert_aber_xl_Datei!)
  • Dim C
  • For Each C In Selection.SpecialCells(xlCellTypeConstants) '2=xlTextValues)
  • If Not IsNumeric(C) And Not IsDate(C) Then C.Value = """" & """" & C.Value & """"  'davor zweimal ", weil das erste als rechtsbündig gelesen wird
  • Next C 'die Logik von """" hatte ich schon mal kapiert und wieder vergessen
  • End Sub

Das µ dauert ziemlich lang, aber das evtl kürzere .Specialcells(xlTextvalues) oder auch xlcelltypeTextvalues oder 2 tut bei mir nicht, komm hier mit der Hilfe nicht klar. Weiß aber auch nicht, wie lange das im anderen Link dauert.

Ist deine Frage für dich zu 100% beantwortet?

Da ich diesen Import öfters machen werde, hatte ich gehofft
das es eine simplere Methode gibt, falls du also noch ein anderen Ansatz hast wäre
ich dir dankbar

0
@karlschnitmann

Naja, zum Thema Anführungszeichen hat f5f5f5 ja schon was geschrieben, wenn du dir diesen Code in eine PERSONAL.XLSB ablegst hast du ihn doch immer für dich bereit.

Nur ich denke das das Thema ; und , noch im Raum steht oder, denn ich weiß nicht ob deine Datenbank es akzeptiert wenn du bei der dadurch erstellten CSV im Editor die ; durch , ersetzt.

Das müsste man noch wissen, wenn nicht musst du mit der Sprache spielen. Das erkläre ich dir dann wenn du mir genau sagst was deine DB macht wenn du 1. jetzt mit dem von f5f5f5 geposteten Makro die Anführungszeichen einfügst (PERSONAL.XLSB kann ich dir gerne auch erklären, dann brauchst du das Makro nicht immer wieder eifügen) und im Editor die ; durch , ersetzt.

Stopt die DB wegen fehler und wenn ja welcher Fehler kommt?

1

Was möchtest Du wissen?