2015-11-17 2 views
1

У меня возникли проблемы с получением даты в формате, который будет работать, чтобы сохранить документ Excel как. То есть вынимая «/» и/или заменить их «-»Преобразовать дату для имени файла

Dim strDate 
Dim intLen 
Dim test 
Dim testArray 

strDate = Date 

test = CStr(strDate) 

testArray = Split(test) 

intLen = Len(test) 

For i = 0 To intLen 
    if testArray(i) = "/" Then 
     testArray(i) = "-" 
    End If 
Next 

'Replace test, "/", "_" 

For i = 0 To 3 
    Wscript.Echo testArray(i) 
Next 


objExcel.ActiveWorkBook.SaveAs "C:\Inventory Script" & intLen & ".xls" 
objExcel.Close 
objExcel.Quit 

Я пытался нас заменить, как это казалось очевидным ответом, но он ничего не делает. Сначала я, хотя это было потому, что это был не строковый тип, но он все равно ничего не делает.

Затем я попытался сделать это в старой школе, итерации по строке в виде массива и замены вручную, но это ничего не сделало.

В настоящее время ошибок не генерируется, и Wscript.Echo testArray (i) выводит 11/17/2015, что для меня странно, что оно выводится вообще.

+0

Также http://stackoverflow.com/a/22575530/692942 – Lankymart

ответ

1
Dim strDate 
Dim intLen 
Dim test 
Dim testArray 

strDate = Date 

test = CStr(strDate) 

'''''' test= join(Split(test,"/"),"_") 
'''''' test= join(Split(test,"-"),"_") 
test= replace(test,"/","_") 
test= replace(test,"-","_") 

Wscript.echo test 
+0

Угу, что сделал это, и я смутился. – wilk