Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1592to1596
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

Excel Export in CSV mit bestimmter Spaltenanzahl

Excel Export in CSV mit bestimmter Spaltenanzahl
22.11.2017 13:16:58
Christian
Guten Tag erstmal,
ich bin hier neu und habe schon einige interessante Beiträge und Hilfestellungen gefunden. Nun habe ich ein Problem wo ich dringend eure Hilfe benötige.
Ich habe eine Tabelle mit 18 Spalten ohne Spaltennamen (A - R).
In die Zellen dieser Spalten sollen Daten wie Nane, Telefonnummern udgl. eingetragen werden. Einige dieser Spalten bleiben aber leer. Nun benötige ich ein VBA Script mit dem ich diese 18 Spalten, wobei die Zeilen variabel sind, als CSV Semikolon (Strichpunkt;) getrennt, exportieren werden. Der Speicherpfad ist variabel und der Name dieser Datei muss als Präfix immer Stammdaten haben und als Suffix immer .V3 sein. Also zum Beispiel Stammdaten_aktuellesDatum.V3.csv.
Das aktuelle Datum sollte wenn möglich automatisch eingefügt werden.
Ich hoffe ich habe mich so ausgedrückt das ihr das versteht und bin froh über jede Hilfestellung von euch.
Vielen Dank schon mla im Voraus
Christian

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

Betreff
Datum
Anwender
Anzeige
AW: Excel Export in CSV mit bestimmter Spaltenanzahl
22.11.2017 13:34:55
Michael
Hallo!
zB so (oder Du bemühst die Recherche mit vermutlich 100000 Versionen):
Sub a()
Const PRE$ = "Stammdaten_"
Const SUF$ = ".V3"
Dim WbQ As Workbook: Set WbQ = ThisWorkbook
Dim WsQ As Worksheet: Set WsQ = WbQ.Worksheets("Tabelle1") 'anpassen
Dim WbZ As Workbook, WsZ As Worksheet
Dim Pfad$
Application.ScreenUpdating = False
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Bitte Verzeichnis wählen"
.AllowMultiSelect = False
If .Show  -1 Then
MsgBox "Vorgang abgebrochen", vbInformation
Exit Sub
Else: Pfad = .SelectedItems(1) & "\"
End If
End With
Set WbZ = Workbooks.Add(xlWBATWorksheet)
Set WsZ = WbZ.Worksheets(1)
WsQ.UsedRange.Copy
WsZ.Cells(1, 1).PasteSpecial xlPasteValuesAndNumberFormats
WbZ.SaveAs Filename:=Pfad & PRE & Format(Date, "YYYYMMDD") & SUF, _
FileFormat:=xlCSV
WbZ.Close True
Set WbQ = Nothing: Set WsQ = Nothing
Set WbZ = Nothing: Set WsZ = Nothing
End Sub
Anpassen musst Du nur den Namen des Tabellenblatts, das exportiert werden soll (aktuell "Tabelle1"). Ist im Code gekennzeichnet.
LG
Michael
Anzeige
AW: Excel Export in CSV mit bestimmter Spaltenanzahl
22.11.2017 13:57:29
Christian
Hallo Michael,
hier werden Sie geholfen und das in einem Tempo - Respekt.
Vielen Dank für deine Hilfe. Ich hätte da noch ein paar kleine Fragen bitte. So wie ich dein Script verstehe muss ich den Bereich markieren den ich exportieren will. Da ich aber keine Kopfzeile odgl. habe sondern die Daten direkt in Zelle A1 beginnen ist das eventuell schwierig. Ich Habe User im Unternehmen, die nicht wirklich eine Affinität zu Computern oder Excel haben.
Ich habe genau 18 Spalten die exportiert werden müssen, dabei auch solche (Spalte R) die oftmals leer sind. Ich traue das den Usern nicht zu. Ich würde gerne immer genau 18 Spalten und beliebig viele Zeilen exportieren können. Kann ich diesen Bereich genau definieren?
Sorry das ich so kompliziert antworte
Vielen Dank für deine Hilfe
Christian
Anzeige
Du musst hier nix markieren...
22.11.2017 14:47:23
Michael
Christian ;-),
...exportiert wird immer der gesamte verwendete Zellbereich des Blattes, ob mit oder ohne Kopfzeile ist egal. Das Einzige was manuell gewählt werden muss ist der gewünschte Speicherpfad, dazu öffnet sich ein Dialog - aber Du hast ja geschrieben, dass Du "variable" Speicherorte wünschst.
Ich sehe aufgrund Deiner bisherigen Beschreibung die Notwendigkeit nicht den zu kopierenden Zell-Bereich spezifisch einzugrenzen.
LG
Michael

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige