再excel中,撰寫vba代碼,通過呼叫GetSaveAsFileName來創建新檔案。代碼如下:
fileName = “Trans.” & org & "." & tmpdate & ".DAT" ' 檔案名結果是Trans.0503.20141116.DAT
Filename = Application.GetSaveAsFileName(fileName,fileFilter := "Text Files (*.*), *.txt")
這段代碼之前在win xp系統下運行正常,但是單位設備統一更新為win7了。更新后發現檔案可以生成,但是檔案名沒有生成,為空。
經過測驗,檔案名中如果帶有“點”(“.”)就無法作為默認檔案名,例如:
Filename = Application.GetSaveAsFileName(“abcdefg”,fileFilter := "Text Files (*.*), *.txt") ‘可以運行,檔案名為abgdefg
Filename = Application.GetSaveAsFileName(“ab.cd.ef.g”,fileFilter := "Text Files (*.*), *.txt") '可以運行,但檔案名為空
請各位支招啊,萬分感謝。
uj5u.com熱心網友回復:
"Text Files (*.*), *.txt") ==》"Text Files (*.txt), *.txt")這樣就可以了(反正只需要txt型別的,所以提前加上好了):
Filename = Application.GetSaveAsFilename("ab.cd.ef.g.txt", fileFilter:="Text Files (*.txt), *.txt")
uj5u.com熱心網友回復:
我嘗試了,沒有效果,我的檔案名是Trans.0503.20141116.DAT。雖然內容是文本結構,但是按照公司要求,檔案名中會出現多個“點”,并且后綴名必須是.DAT。如果檔案名是“Trans050320141116DAT”則沒有問題,因此應該是點的事兒。怎么辦呢?需要轉譯么?
uj5u.com熱心網友回復:
Filename = Application.GetSaveAsFilename("ab.cd.ef.g.dat", fileFilter:="dat Files (*.dat), *.dat")*.dat能與 *.txt一樣嗎?
uj5u.com熱心網友回復:
呵呵。公司的要求也夠奇葩的,用下劃線都比用點兒強。轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/108056.html
標籤:VBA
上一篇:求大神幫忙看看出了什么錯~VB
