Anzeige
Archiv - Navigation
1432to1436
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

Anpassing Makro Variabel speichern stat konstant,

Anpassing Makro Variabel speichern stat konstant,
22.06.2015 20:40:28
Karel
Gute Abend
Haben Untenstehenden Code im Einsatz aber brauche eine Änderung beim Speichern.
Möchte gerne Activesheet in order Test aber gerne unter den Aktuelle Tabellennamen speichern aber mit Datum und Uhrzeit.
Option Explicit
Sub SaveCSV()
'Quelle: Thomas Ramel
'http://www.office-loesung.de/fpost62938.php#62938
Dim Bereich         As Object
Dim Zeile           As Object
Dim Zelle           As Object
Dim strTemp         As String
Const Pfad          As String = "C:\Test\"
Const Dateiname     As String = "test"
Const Extension     As String = ".CSV"
Const Trennzeichen  As String = ";"
Const Kapselzeichen As String = """"
'Hier kann auch ein eigener Range angegeben werden
'Set Bereich = ActiveSheet.Range("A1:B5")
Set Bereich = ActiveSheet.UsedRange
Open Pfad & Dateiname & Extension For Output As #1
For Each Zeile In Bereich.Rows
For Each Zelle In Zeile.Cells
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then   'angepasst T.Ramel
'Zellen, die ein Trennzeichen beinhalten in Kapselzeichen setzen
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
strTemp = Left(strTemp, Len(strTemp) - 1)    'angepasst T.Ramel
Print #1, strTemp
strTemp = ""
Next
Close #1
Set Bereich = Nothing
End Sub

mfg
Karel

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Anpassing Makro Variabel speichern stat konstant,
22.06.2015 21:11:33
Michael
Hi Karel,
mache aus "Dateiname" eine Variable statt einer Konstanten und füge irgendwo nach den ganzen Deklarationen (etwa nach dem set Bereich) die Zeile
Dateiname = ActiveSheet.Name & "_" & Format(Now, "YYYYMMDD_hhmmss")
ein.
Schöne Grüße,
Michael

AW: Anpassing Makro Variabel speichern stat konstant,
22.06.2015 21:58:18
Karel
Hallo Michael,
Mein VBA ist leider nicht ausreichend benutze der Code, aber habe kein Idee wo genau die Änderungen reinkommen. Wenns du betreffenden Code kannst anpassen gerne........
Schöne Grüße,
Karel

AW: Anpassing Makro Variabel speichern stat konstant,
22.06.2015 22:12:01
Michael
Hi Karel,
aber ungetestet, weil ich Deine Datei nicht nachbauen will:
Sub SaveCSV()
'Quelle: Thomas Ramel
'http://www.office-loesung.de/fpost62938.php#62938
Dim Bereich         As Object
Dim Zeile           As Object
Dim Zelle           As Object
Dim strTemp         As String
Const Pfad          As String = "C:\Test\"
Dim   Dateiname     As String
Const Extension     As String = ".CSV"
Const Trennzeichen  As String = ";"
Const Kapselzeichen As String = """"
'Hier kann auch ein eigener Range angegeben werden
'Set Bereich = ActiveSheet.Range("A1:B5")
Set Bereich = ActiveSheet.UsedRange
 Dateiname = ActiveSheet.Name & "_" & Format(Now, "YYYYMMDD_hhmmss")
Open Pfad & Dateiname & Extension For Output As #1
For Each Zeile In Bereich.Rows
For Each Zelle In Zeile.Cells
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then   'angepasst T.Ramel
'Zellen, die ein Trennzeichen beinhalten in Kapselzeichen setzen
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
strTemp = Left(strTemp, Len(strTemp) - 1)    'angepasst T.Ramel
Print #1, strTemp
strTemp = ""
Next
Close #1
Set Bereich = Nothing
End Sub
Ok?
Gruß,
Michael

Anzeige
AW: Anpassing Makro Variabel speichern stat konstant,
22.06.2015 22:46:49
Karel
Hallo Michel,
Getestet und Funktioniert aber ein kleine wünsch habe ich noch.
Datei wird korekt unter Tabellename und Zeit gespeichert Export 1_20150622_222451
Aber der Tabelle namen sollte nur "Export 1" bleiben hat jetzt aber auch der namen erhalten
Export 1_20150622_222451
Grüße
Karel

AW: Anpassing Makro Variabel speichern stat konstant,
22.06.2015 23:23:07
Michael
Hallo Karel,
d.h. wenn Du die erzeugte .CSV-Datei in Excel öffnest?
Das wird sich nicht vermeiden lassen, derweil eine .CSV-Datei eine TEXT-Datei ist, bei der die Werte mal historisch gesehen mit Komma getrennt waren (CommaSeparatedValues), und eine TEXT-Datei besitzt keine "Tabellenblätter" in dem Sinne, auch wenn sie sich in Excel öffnen läßt.
Wenn Du darauf Einfluß nehmen willst, mußt Du eben doch das .XLS-Format nehmen.
Oder so: wer auch immer die .CSV-Datei weiterverarbeitet, wird den "Blattnamen" nicht angezeigt bekommen, weil er in der Datei selbst nicht gespeichert ist.
Öffne die CSV einfach mal mit dem Windows-Editor, dann siehst Du, was ich meine.
Schöne Grüße,
Michael

Anzeige
Ot
23.06.2015 19:02:46
Karel
Hallo Michael,
Stimmt ist ja auch Logisch, danke für deine hilfe
Beste Grüße
Karel

gerne, vielen Dank für die Rückmeldung owT
24.06.2015 07:46:55
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige