Save As File đang mở (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hungdiep85

Thành viên thường trực
Tham gia
1/6/09
Bài viết
218
Được thích
23
Giới tính
Nam
Chào các Thầy Cô và Anh Chị Trên GPE

Em có file của Thầy hpkhuong làm giúp, mội thứ điều tuyệt vời.

Nhưng giờ phát sinh 1 vấn đề là khi chạy code, thì có người đang mở file,

Thầy Cô và Anh Chị Trên GPE

Có thể giúp em thêm đoạn code là khi chạy code, nếu file đang mở thì mở only luôn, sau đó save as lại với tên đằng sau có thêm chữ New.

Em cảm ơn trước àh
 

File đính kèm

Vấn đề trên là không khả thi nhé...bạn. Trong code trên thực sự thì khi làm code làm việc...nó thực hiện 1 động tác là mở file lên, update dữ liệu, xong đóng lại và đổi tên. Nếu bạn muốn luôn luôn only thì không khả thi rồi...

=> Nếu không đóng thì bạn có cả 100 file thì nó cũng nằm chình ình trên màn hình cả 100 file đó..../Và code sẽ bị lỗi khi không thể đổi tên được - File đang mở làm sao đổi tên....
Thôi đừng mơ mộng mữa, cứ cái cũ mà làm đi....--=0--=0--=0

P/s: Xin đừng gọi tôi là "Thầy - Bà" gì ở đây nhé! tôi như bao member khác trên GPE này thôi!__--__



Dạ. Cho em hỏi là Không biết tại sao , mổi khi chạy code là bị lổi ở điểm này ,

ChonO.MoveFile OldName, NewName

Phải tắt file mở lại hoạt qua máy khác chạy thì được.

Giúp em với
 
Upvote 0
Tôi chạy có vấn đề gì đâu nhỉ? Nhưng, có thể là như thế này này:

Trong code trên, trong folder chứa file con có nhiều file của bạn có các ký tự đầu giống tên của mã hàng trên file A. Cho nên khi code duyệt đối tên file (câu lệnh bên trên)... Sẽ tìm ra nhiều hơn 1 file có các ký tự đầu giống mã hàng....và đổi tên => lỗi là đương nhiên... Cho nên trong Folder chưa file của bạn....bắt buộc thì các ký tự đầu tên file phải đừng để trùng... Chắc tới đây bạn hiểu vấn đề rồi chứ nhỉ??? (Cái gì mà tự động tất cả...không hẳn là tốt cả đâu nhé!)



Em đã hiểu rồi, đúng như Anh nói, em đã đổi lại toàn bộ tên file, và em ấy chạy như Marathon. Em cảm ơn Anh


Àh Anh có thể chỉ em thêm đường dan đến folder luôn được không.

With Application.FileDialog(msoFileDialogFolderPicker)
.Title = ""
.Show
If .SelectedItems.Count = 0 Then Exit Sub
Path = .SelectedItems(1) & ""
End With

Em cảm ơn Anh
 
Lần chỉnh sửa cuối:
Upvote 0
Ý bạn là sao nhỉ? Là viết đường dẫn Folder chứa file Con luôn vào code. Không cần Open chọn Folder hay sao? Nếu vậy thì thay cả cụm ở trên bằng cái này thôi

Mã:
 Path = ThisWorkbook.Path & "\New folder\"

Dạ. em Cảm ơn Anh Nhiều lắm. mội thứ tuyệt vời.
 
Upvote 0
Ý bạn là sao nhỉ? Là viết đường dẫn Folder chứa file Con luôn vào code. Không cần Open chọn Folder hay sao? Nếu vậy thì thay cả cụm ở trên bằng cái này thôi

Mã:
 Path = ThisWorkbook.Path & "\New folder\"




Anh Ơi khi dữ liệu nhiều lên thì em lại bị lổi vòng này , Giờ phải sửa sao.

Sh.Range("A2").Resize(K, UBound(Arr, 2)).Value = dArr

Giúp em với
 
Upvote 0
Tôi có biết dữ liệu của bạn nhiều là bao nhiêu dòng, bao nhiêu cột mà sửa lỗi cho bạn...Muốn gì thì úp lên đây.

Dạ. File nặng quá em giúp lên không được

Cột A > BK
Dòng thi 110000 thì chạy được, còn em thêm đến 128000 dòng thì báo lổi, mà dữ liệu của em là càn thêm càn nhiều à.

Em cảm ơn anh
 
Lần chỉnh sửa cuối:
Upvote 0
Úp lên trang khác...Link sang đây...Tôi không rảnh để sửa từng chút cho bạn.

Dạ , Lúc chiều em soạn file để giử lên , sau đó em cho chạy thử thì nó lại được , em thêm dữ liệu gắp 3 lần ma vẫn chạy (Bên file mới) ,
còn file củ thì lại báo lổi .

Nên em sẽ làm lại toan bộ file mới hết1 lần nữa. để coi còn lổi nửa không, nếu còn lổi em sẽ giử file gốc qua cho anh , nhờ Anh xem giúp.

Anh cho em xin địa chỉ Email của Anh được không.

Em cảm ơn Anh.
 
Upvote 0
Mail miết thì inbox nha bạn! chứ không púp bờ líc ở đây nhá!




Da, Em đả làm file thật nhẹ rồi à, Em để dữ liệu vào nút dữ liệu hết rồi.

Lúc chạy code thường lổi ở điểm

1, ReDim dArr(1 To UBound(Arr), 1 To UBound(Arr, 2))

2, Sh.Range("A2").Resize(K, UBound(Arr, 2)).Value = dArr

Em Cảm ơn trước àh
 

File đính kèm

Upvote 0
Tóm lại bạn làm File tổng gì mà không chuẩn gì hết

1. Dữ liệu sao có 1 dòng tại dòng 1

2. Rồi dữ liệu từ dòng 10 trở đi thì sao???


=> Tóm lại là lấ dữ liệu từ đâu ở File Tổng của bạn???


dạ, dữ liệu từ dòng 10 là copy từ file khác paste vào à , vi em không thể up file nặng qua lên, nên em mới để 1 dòng ở trên để khi chạy copy thì nó copy dữ liệu xuống, cho dữ liệu nhiều giống file gốc, chứ thật ra là không có gì ở dòng 1.
Dòng 10 là tiêu đề, dòng 11 mới là dữ liệu.

Em cảm ơn Anh àh
 
Lần chỉnh sửa cuối:
Upvote 0
Vậy tóm lại. Dữ liệu tại File tổng thật của bạn sẽ là.

1. Dòng 10 là dòng tiêu đề

2. Từ dòng 11 trở di sẽ là dữ liệu mã hàng...Và bạn cần lấy dữ liệu từ dòng 11 này trở đi để update vào các file con trong folder kia đúng không?

Vậy thì dữ liệu phải lấy từ dòng 11 trỏ đi chứ sao lại có mỗi một dòng 1 trên cơ chứ...


Hay là sao bạn phải nói rõ...
--------------------------------------------------



Sửa lại dòng khai báo mảng Arr theo í bạn đã Edit ở trên là;

Mã:
 Arr = WbMain.Sheets("DULIEUTONG").Range("A11", WbMain.Sheets("DULIEUTONG").Range("A65000").End(3)).Resize(, 63).Value



Dạ đúng
1. Dòng 10 là dòng tiêu đề


Dạ đúng
2. Từ dòng 11 trở di sẽ là dữ liệu mã hàng...Và bạn cần lấy dữ liệu từ dòng 11 này trở đi để update vào các file con trong folder kia đúng không?


Dạ nút dữ liệu đó Anh mở ra cho chạy 1 lần thôi, Anh sẽ thấy 150000 dòng dữ liệu ,
là em muốn lấy hết cái đóng dữ liệu 150000 dòng đó qua file con. nếu Mahang giống với tên file.


Em cảm ơn Anh Àh
 
Upvote 0
Sửa dòng Arr nhiều hơn 1 tí

Mã:
 [COLOR=#000000][I] Arr = WbMain.Sheets("DULIEUTONG").Range("A11", WbMain.Sheets("DULIEUTONG").Range("A500000").End(3)).Resize(, 63).Value[/I][/COLOR]


Dạ , sửa thành code mới anh mới gửi thì chạy nó ổn định hơn, em làm từ sáng giờ không bị báo lổi gì hết, nhưng bày em chạy 10 lần thì nó vẫn báo lởi cở 4 lần, những mổi khi báo lổi là không còn chạy được nữa, phải đổi máy mới chạy lại được.
em nghỉ có khi nào do mình copy dữ liệu nhiều quá nó không cho paste không Anh.

báo lổi ở dòng này : Sh.Range("A2").Resize(K, UBound(Arr, 2)).Value = dArr

Em càm ơn Anh
 
Upvote 0
Ai biết bạn chạy như nào mà lỗi...Nói vậy thánh cũng chịu thôi!--=0--=0--=0

Dạ , File khi chạy code bị lổi nhự vậy nè Anh.

Có cách nào khắc phục lỗi trên không Anh , hay em phải làm lại file mới làm theo kiểu khác , theo kinh nghiệm của Anh, hướng dẫn em với .

Em cảm ơn Anh Àh
 

File đính kèm

  • Loi.jpg
    Loi.jpg
    27.7 KB · Đọc: 9
Upvote 0
Web KT

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

Back
Top Bottom