Hallo Zusammen,
bin neu hier und habe folgendes Problem:
Ich schreibe Werte aus einer Zeile über eine Schleife mit Open Append in eine Textdatei.
Ein Wert einer Zeile ist eine Uhrzeit. Wie kann ich die Uhrzeit als Text auslesen, Standardmässig kommt ja immer der Zahlenwert.
Beispiel: 14:30 Uhr soll als 14:30 in der Textdatei erscheinen, nicht als 0,5983983.
Wie bekomme ich das in VBA hin ?
Ideal wäre das umformatieren der Uhrzeit in Text in der Zelle. Denn als Text wird dann OK exportiert.
Wie kann ich Zelle O3 vorher umschreiben ?
Code:
Sub CreateCSV()
Dim il As Long, iu As Long, jl As Long, ju As Long, i As Long, j As Long
Dim DataArray As Variant
Dim strLine As String, strCell As String
Dim intOutFile As Integer
Dim Filename As String
Filename = "d:\daten\scalelabel.csv"
'With Worksheets("09 Archive")
'DataArray = Range("A3:AO") 'assign data range to an array
With Worksheets("03 Single Line")
DataArray = Range("A3", LastCell(ActiveSheet)) 'assign data range to an array
il = LBound(DataArray, 1)
iu = UBound(DataArray, 1)
jl = LBound(DataArray, 2)
ju = UBound(DataArray, 2)
intOutFile = FreeFile
Open Filename For Append As intOutFile
For i = il To iu 'loop through array by line
strLine = DataArray(i, 1)
For j = jl + 1 To ju 'touch each column
strCell = Trim(DataArray(i, j)) 'remove any leading/trailing blanks
If InStr(strCell, ",") > 0 Then strCell = """" & strCell & """" 'if cell has one or more commas
strLine = strLine & ";" & strCell 'separate the data in each cell with a semicolon
Next j
Print #intOutFile, strLine 'write a line to a text file
Next i
Close intOutFile
End With
End Sub
Vielen Dank,
Steffen
|