Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1408to1412
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

per Code speichern als CSV

per Code speichern als CSV
11.02.2015 11:27:02
Bernd
Hallo ihr Lieben,
ich habe mal wieder ein Problem.
Und zwar möchte eine Exceldatei als CSV speichern.
Manuel funzt es einwandfrei.
Ich bekomme zwei meldungen:
1. Datei schon vorhanden, möchten sie überschreiben und
2. Datei.CSV kann Merkmale enthalten, die mit CSV (Trennzeichen-getrennt) nicht kompatibel sind. Möchten Sie diese Arbeitsmappe in diesem Format speichern?
Beide Meldungen bestätige ich mit ja.
Das habe ich als Makro aufgezeicht, weil ich es per Buttonklick machen möchte.
Nach Buttonklick kommt nur die 1. Meldung.
Dadurch wird die Datei nicht so gespeichert, als wenn ich es manuell machen würde.
Wie kann ich im Code auch die 2. Meldung abfragen lassen?
Lieben Dank für eure Hilfe
LG Bernd

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per Code speichern als CSV
11.02.2015 12:07:56
yummi
Hallo Bernd,
unterdrück die Abfragen:

Application.DisplayAlerts = False
Dein Code
Application.DisplayAlerts = True
Gruß
yummi

AW: per Code speichern als CSV
11.02.2015 12:25:42
fcs
Hallo Bernd,
speichern via VBA hat hier 2 Tücken:
1. Das CSV-Format
Als Trennzeichen werden Komma eingefügt und auch bestimmte Formaten (Datum, Zeiten, Zahlen) könne falsch sein. Wenn man das nicht möchte, dann muss man den Paramater Local auf True setzen.
2. Warnhinweise
VBA ist hier radikal und speichert einfach als CSV.
Die entsprechend e Warnmeldung/Sicherheitsabfrage muss man sich selber basteln.
Gruß
Franz
Codebeispiel:
Sub Save_as_CSV_local()
'Aktives Blatt als CSV-Datei mit lokalen Formaten/Trennzeichen speichern.
Dim bolSaveCSV As Boolean, strMsg As String
bolSaveCSV = True
With ActiveWorkbook
If .FileFormat  xlCSV Then
strMsg = "Die aktive Arbeitsmappe: " & .Name & vbLf _
& "Enthält Formate, die beim Speichern als CSV verloren gehen!" _
& vbLf & IIf(.Sheets.Count > 1, _
"Enthält mehr als 1 Blatt, aktives Blatt als CSV speichern?", "") _
& vbLf & vbLf & "Datei als CSV-Speichern?"
If MsgBox(strMsg, vbQuestion + vbOKCancel + vbDefaultButton2, _
"Speichern als CSV-Datei") = vbOK Then
If .Saved = False Then .Save 'Speichern, wenn Daei nicht gespeichert ist
bolSaveCSV = True
Else
bolSaveCSV = False
End If
End If
If bolSaveCSV = True Then
.SaveAs Filename:="D:\Test\Mappe1.csv", FileFormat:=xlCSV, _
CreateBackup:=False, Local:=True
End If
End With
End Sub

Anzeige
Danke Franz. Funzt perfekt :-) o.w.t.
11.02.2015 13:25:04
Bernd
.

75 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige