Giúp code lấy path của thư muc XLSTART

Liên hệ QC

buivankiet

Thành viên mới
Tham gia
30/5/08
Bài viết
38
Được thích
6
Tôi muốn code copy một file là data từ trên mạng để làm data cho một chương trình ứng dụng để khi khởi động excel thì file này tự động mở và ẩn, như file personal.xls, như trên mỗi máy tôi thấy vị trí thư mục XLSTART có khác nhau nên nhờ các bạn cho code để tìm thư mục XLSTART , code tìm file thì trên mạng đã có, nhưng code tìm path của thư mục thì chỉ thấy có các thư mục đặc biệt của Window thôi.
Cám ơn trước**~**
 
Tôi muốn code copy một file là data từ trên mạng để làm data cho một chương trình ứng dụng để khi khởi động excel thì file này tự động mở và ẩn, như file personal.xls, như trên mỗi máy tôi thấy vị trí thư mục XLSTART có khác nhau nên nhờ các bạn cho code để tìm thư mục XLSTART , code tìm file thì trên mạng đã có, nhưng code tìm path của thư mục thì chỉ thấy có các thư mục đặc biệt của Window thôi.
Cám ơn trước**~**
Thử code này xem:
PHP:
Sub XlStartPath()
 With CreateObject("Shell.Application")
   MsgBox .Namespace(&H1A&).Self.Path & "\Microsoft\Excel\XLSTART"
 End With
End Sub
 
Upvote 0
Thử code này xem:
PHP:
Sub XlStartPath()
 With CreateObject("Shell.Application")
   MsgBox .Namespace(&H1A&).Self.Path & "\Microsoft\Excel\XLSTART"
 End With
End Sub
Sub XlStartPath cho kết quả: C:\Documents and Settings\VP2\Application Data\Microsoft\Excel\XLSTART
Muốn lấy đường dẫn XLSTART trong Program Files : C:\Program Files\Microsoft Office\OFFICE11\XLSTART thì viết lệnh nào?
 
Upvote 0
Sub XlStartPath cho kết quả: C:\Documents and Settings\VP2\Application Data\Microsoft\Excel\XLSTART
Muốn lấy đường dẫn XLSTART trong Program Files : C:\Program Files\Microsoft Office\OFFICE11\XLSTART thì viết lệnh nào?
Anh dùng:
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE11\XLSTART"
Riêng Folder OFFICE11 thì sẽ khác nhau trên từng Version của Office... Cái này anh chỉnh được mà! (If vài nhát)
--------------
Em nghĩ có lẽ là vầy sẽ tổng quát:
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE" & Format(Application.Version, "#") & "\XLSTART"
--------------
Nói thêm về các hằng số của thư mục đặc biệt:
Hằng Thư mục đặc biệt

&H1& Internet Explorer
&H2& Programs
&H3& Control Panel
&H4& Printers and Faxes
&H5& My Documents
&H6& Favorites
&H7& Startup
&H8& My Recent Documents
&H9& SendTo
&Ha& Recycle Bin
&Hb& Start Menu
&Hd& My Music
&He& My Videos
&H10& Desktop
&H11& My Computer
&H12& My Network Places
&H13& NetHood
&H14& Fonts
&H15& Templates
&H16& All Users Start Menu
&H17& All Users Programs
&H18& All Users Startup
&H19& All Users Desktop
&H1a& Application Data
&H1b& PrintHood
&H1c& Local Settings\Application Data
&H19& All Users Favorites
&H20& Local Settings\ Temporary Internet Files
&H21& Cookies
&H22& Local Settings\History
&H23& All Users Application Data
&H24& Windows
&H25& System32
&H26& Program Files
&H27& My Pictures
&H28& User Profile
&H2b& Common Files
&H2e& All Users Templates
&H2f& Administrative Tools
&H31& Network Connections
 
Lần chỉnh sửa cuối:
Upvote 0
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE" & Format(Application.Version, "#") & "\XLSTART"
Nó chạy ra ...\Microsoft Office\OFFICE10\XLSTART
vì Application.Version=11.0, format thành 110, thư mục này không có, nó lấy thư mục đầu tiên ra kết quả nên sai.
Anh chỉnh lại
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE" & Val(Application.Version) & "\XLSTART"
 
Lần chỉnh sửa cuối:
Upvote 0
Để lấy thư mục XLStart trong Documents and Settings thì có thể dùng lệnh sau:
Mã:
Application.StartupPath
Để lấy thư mục trong Program files có thể dùng lệnh sau:
Mã:
Application.Path
Câu lệnh này mới trỏ tới thư mục Office, cần nối thêm XLStart vào sau.
 
Upvote 0
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE" & Format(Application.Version, "#") & "\XLSTART"
Nó chạy ra ...\Microsoft Office\OFFICE10\XLSTART
vì Application.Version=11.0, format thành 110, thư mục này không có, nó lấy thư mục đầu tiên ra kết quả nên sai.
Anh chỉnh lại
PHP:
MsgBox .Namespace(&H26&).Self.Path & "\Microsoft Office\OFFICE" & Val(Application.Version) & "\XLSTART"
Vậy ăn chắc định dạng NUMBER trên máy anh là kiểu VN rồi (dấu phẩy là dấu thập phân)
Mấy vụ dấu chấm phẩy này quả thật lằng nhằng!
 
Upvote 0
Spam 1 chút: Chẳng biết ai sáng lập ra cái tiêu chuẩn về dấu chấm dấu phẩy của VN, chắc lúc đó chưa có máy tính nên không lường trước được các sự kiện này. Chắc rồi đây các nước sẽ phải thành lập 1 hiệp hội khoa học gì đó để thống nhất về những vấn đề này, kể cả ngày tháng, rồi các mã số nữa. Tỷ dụ như việc đặt biển số xe, mã vùng điện thoại, đầu số chứng minh thư... tại sao không thống nhất mà mỗi ông 1 phách nhỉ.
 
Upvote 0
Web KT

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

Back
Top Bottom