Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Xls to CSV mit makro

Mitglied: aiwa002

aiwa002 (Level 1) - Jetzt verbinden

29.09.2011, aktualisiert 22:14 Uhr, 10305 Aufrufe, 2 Kommentare

Hallo,

ich muss eine Excel Datei automatisch per Batch Job in eine CSV Datei umwandeln.
Natürlich das Ganze voll automatisch.
Das ganze soll über ein Makro in Excel umgesetz werden.

Hierzu habe ich bereits zwei Möglichkeiten mit Problemen

1. Möglichkeit

Problem:
Leider werden hier als Trennzeichne "," verwendet.
Es werden jedoch ";" als Trennzeichen benötigt!
01.
Private Sub Workbook_Open() 
02.
    ChDir "c:\temp" 
03.
    Workbooks.Open Filename:="c:\temp\test.xls" 
04.
    ActiveWorkbook.SaveAs Filename:="c:\temp\test.csv", _ 
05.
    FileFormat:=xlCSV, CreateBackup:=False 
06.
End Sub

2. Möglichkeit

Problem:
Hier wird beim speichern der "Speichern unter" Dialog angezeigt,
Es sollte jedoch an dieser Stelle automatisch abspeichern.
01.
Sub Sheet_Nach_CSVDatei() 
02.
'hierbei bleibt die Formatierung der Zellen so wie sie angezeigt wird. 
03.
'Es muss alles so formatiert sein wie es später In der CSV sein soll. 
04.
Dim vntFileName As Variant 
05.
Dim lngFn As Long 
06.
Dim rngRow As Excel.Range 
07.
Dim rngCell As Excel.Range 
08.
Dim strDelimiter As String 
09.
Dim strText As String 
10.
Dim strTextCell As String 
11.
Dim bolErsteSpalte As Boolean 
12.
Dim rngColumn As Excel.Range 
13.
Dim wksQuelle As Excel.Worksheet 
14.
 
15.
strDelimiter = ";" 'deutsches CSV-Format: ";", Englishes CSV-Format: "," 
16.
 
17.
vntFileName = Application.GetSaveAsFilename("Test.csv", _ 
18.
    FileFilter:="CSV-File (*.csv),*.csv") 
19.
If vntFileName = False Then Exit Sub 
20.
 
21.
Set wksQuelle = ActiveWorkbook.Worksheets("Tabelle1")  'Beispiel oder: = ActiveSheet 
22.
 
23.
lngFn = FreeFile 
24.
Open vntFileName For Output As lngFn 
25.
 For Each rngRow In wksQuelle.UsedRange.Rows  
26.
  strText = "" 
27.
  bolErsteSpalte = True 
28.
  For Each rngCell In rngRow.Columns 
29.
   strTextCell = rngCell.Text 'Text! inclusive dem NumberFormat der Zelle 
30.
   If InStr(1, strTextCell, strDelimiter, 0) Then '## wenn alle Zellen mit " " eingeschlossen werden sollen zeile auskommentieren 
31.
    'bewirkt das Werte die den Delimiter enthalten (was eigentlich nicht sein sollte) mit " " eingeschlossen werden 
32.
    strTextCell = Chr(34) & strTextCell & Chr(34) 
33.
   End If '## 
34.
   If bolErsteSpalte Then 
35.
    strText = strTextCell 
36.
    bolErsteSpalte = False 
37.
   Else 
38.
    strText = strText & strDelimiter & strTextCell 
39.
   End If 
40.
  Next 
41.
  Print #lngFn, strText 
42.
 Next 
43.
Close lngFn 
44.
  
45.
End Sub
Ich hoffe ihr könnt mir hier weiterhelfen!

Gruß
aiwa002

[Edit Biber] Zeilennummer drancodeformatiert. [/Edit]
Mitglied: bastla
29.09.2011 um 11:43 Uhr
Hallo aiwa002!
Hier wird beim speichern der "Speichern unter" Dialog angezeigt,
Es sollte jedoch an dieser Stelle automatisch abspeichern.
Dann ersetze einfach die entsprechende Stelle im Code (ich hätte ja die Zeilennummer(n) angegeben, wenn Du eine passende Formatierung verwendet hättest) durch
vntFileName = "c:\temp\test.csv"
Grüße
bastla
Bitte warten ..
Mitglied: aiwa002
29.09.2011 um 11:55 Uhr
Hat super geklappt, Danke!

Kann manchmal so einfach sein
Bitte warten ..
Ähnliche Inhalte
VB for Applications

Excel Makro zur Konvertierung einer xls oder xlsx in das Frormat xlsm

gelöst Frage von Armin-KVB for Applications3 Kommentare

Liebes Forum, vielleicht könnt Ihr mir wieder bei einem Problem aus der Excel-VBA umgebung weiterhelfen. Folgender Hintergrund dazu: In ...

XML

CSV bzw. XLS Dateien in ein XML Schema einbinden

gelöst Frage von fisi-floXML3 Kommentare

Hallo allerseits, bisher habe ich von Lieferanten immer unterschiedliche Preislisten der Lieferanten im CSV oder XLS Dateiformat bekommen. Selbst ...

Windows Server

Powershell Daten sortiert in CSV XLS exportieren

gelöst Frage von earthheroWindows Server2 Kommentare

Schönen guten Tag zusammen, ich habe mir aus dem Internet ein entsprechendes Skript zur Auswertung von WSUS Update zusammengebastelt, ...

Batch & Shell

Per Batch in Aufgabeplanung XLS in CSV umwandeln

Frage von dtbsysBatch & Shell21 Kommentare

Hallo und guten Morgen, leider habe ich in den zahlreichen Beiträgen zu dem Thema nichts passendes gefunden. Ich bekomme ...

Neue Wissensbeiträge
Windows Server

SBS 2011: Installation von KB4457144 schlägt beim Reboot fehl - Von Dienst gesperrte Schriftart ursächlich

Tipp von the-buccaneer vor 4 StundenWindows Server

Moinsen zusammen! Das hat mich einige graue Haare gekostet: Ein SBS 2011 weigerte sich schon im August, das monatl. ...

Windows Netzwerk
Browser-Lags und IPv6
Erfahrungsbericht von NixVerstehen vor 10 StundenWindows Netzwerk1 Kommentar

Hallo zusammen, wir betreiben als kleines Speditionsunternehmen ein überschaubares Windows-Netzwerk mit Win10-Clients sowie einem Server 2016 Essentials als "eierlegende ...

Humor (lol)

Erstaunlich, Windows mit extremer Laufzeit (Server) lol

Tipp von mathu vor 13 StundenHumor (lol)5 Kommentare

Was es so alles gibt. :-)

Windows Netzwerk

CGM Praxisarchiv funktioniert auf Clients nach Update auf 4.14 nicht mehr

Tipp von MOS6581 vor 1 TagWindows Netzwerk

Moin, ein Kunde setzt das CGM-Praxisarchiv ein. Mehrplatzinstallation mit SQL-Server. Nachdem letzte Woche auf die 4.14 aktualisiert wurde, funktionierte ...

Heiß diskutierte Inhalte
Hyper-V
Windows Serer 2016 Standard virtualisieren
gelöst Frage von fritte87Hyper-V33 Kommentare

Hallo zusammen, ich muss für eine kleine Firma ein entsprechendes neues kleines Konzept bauen. Ich habe einen Server Standard ...

LAN, WAN, Wireless
Kombiniere mehrere 4G Router zu einem Netzwerk - Anwendung kleine LAN (10-20 Leute)
Frage von HulkTheHeroLAN, WAN, Wireless24 Kommentare

Guten Mittag liebes Administrator - Fourm, ich hoffe ich habe das richtige Thema ausgewählt - ansonsten bitte gerne verschieben ...

Windows Server
Fileserver von 2012 R2 auf 2012R2
gelöst Frage von ThabeusWindows Server23 Kommentare

Moin moin, leider war in der Vergangenheit der Fokus des Betriebs nicht auf Langfristigkeit ausgelegt. Daher stehe ich jetzt ...

Router & Routing
Größere Zahl VPN-Verbindungen mit Fritz-Box einrichten
Frage von miscmikeRouter & Routing15 Kommentare

Hallo Zusammen, ich supporte verschiedene Kunden mit bestehenden LAN-LAN-Kopplungen via FritzBox (7490, FritzOS 7.01) . Anwendungen sind z.B. Kaspersky-KSC ...