Từ dấu phẩy bị chuyển thành dấu chấm khi lưu file

Liên hệ QC

xuanlinh91

Thành viên mới
Tham gia
5/4/10
Bài viết
23
Được thích
0
Em dùng hàm sau để lưu một sheet file excel thành 1 file csdl .csv




Mã:
Sub SaveToCSV(path2 As String)
    myDir = path2
    ActiveWorkbook.SaveAs FileName:=myDir, FileFormat:=xlUnicodeText
End Sub

với tham số path2 được truyền vào là : "C:/.....DM.csv"




Sheet Dm của e như sau
sieuthiNHANH2011121634950yje4zgexmm9700.jpeg



Tuy nhiên thì khi lưu thành file csv thì lại bị chuyển toàn bộ dấu phẩy thành dấu chấm, làm lẫn lộn dữ liệu
sieuthiNHANH2011121634950yjk5ztgwmd9541.jpeg



Vậy mọi người cho em hỏi lý do và cách giải quyết trường hợp này ạ


Em xin cảm ơn
 
Sau khi nghiên cứu em nhận ra rằng khi dùng tay để lưu ra dạng csv thì sẽ có 1 tùy chọn như sau

08ae6263aa61217638ba13cba8acaf66_39467519.12292011164923pm.png


Nó sẽ cho ta giữ nguyên định dạng số trong file



Còn khi ta lưu bằng code, không có tùy chọn đó, thì toàn bộ số của em sẽ bị chuyển thành text

12-29-2011%2017-00-13-PM.jpg



Vậy làm sao để khi lưu bằng code mà vẫn giữ được định dạng là số, chứ ko bị chuyển thành text và bị đổi dấu :(
 
Upvote 0
trời ơi ko ai giúp em ạ :((

Hiện tại bạn có trong CP dấu phẩy vậy hà cớ gì bạn lại đổi sang dấu chấm? Mà anh em trong cơ quan đâu có cho phép bạn. Bạn có trong CP như ý muốn rồi, vấn đề là "bắt" Excel "chấp nhận" các thiết lập trong CP của bạn. Thông số Local mặc định có giá trị là FALSE, lúc đó Excel không "nhòm" vào CP của bạn mà nó lấy mặc định của English, mà bạn biết cái đó có nghĩa là dấu chấm ...
Khi bạn nhập TRUE thì lúc đó nó sẽ "nhòm' vào CP của bạn, mà trong đó bạn thiết lập "to đùng' là "dấu phẩy anh bạn ơi"
Tóm lại:
Sub SaveToCSV()
myDir = "C:\Documents and Settings\Administrator\Desktop\DM.csv"
ActiveWorkbook.SaveAs Filename:=myDir, FileFormat:=xlUnicodeText, Local := TRUE
End Sub
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom