PDA

View Full Version : Excel Chạy Rất Chậm



exel2007
06-03-08, 03:45 PM
Không hiểu file excel dữ liệu điền tới dòng thứ 5000 file excel chạy rất chậm , ai giả thích hộ

salam
06-03-08, 03:51 PM
Không hiểu file excel dữ liệu điền tới dòng thứ 5000 file excel chạy rất chậm , ai giả thích hộ
File chạy chậm do nhiều nguyên nhân ví dụ như dữ liệu quá nhiều, nhiều công thức, nhiều name rác ... muốn biêth file của bạn cụ thể chậm như thế nào bạn post nó lên.

exel2007
06-03-08, 07:03 PM
File chạy chậm do nhiều nguyên nhân ví dụ như dữ liệu quá nhiều, nhiều công thức, nhiều name rác ... muốn biêth file của bạn cụ thể chậm như thế nào bạn post nó lên.

hoàn toàn không có hàm gì cả , trước kia dùng office XP(2002) thì không bị như thế , nhưng từ khi cài office2003 vào là bị khi remove và cài lại office xp thì nó vẫn bị ảnh hưởng và bị trường hợp như trên , thậm chí delete dòng cũng phải chờ nó 15 phút nó mới delete được , nói chung ức phát điên lên

exel2007
06-03-08, 07:23 PM
Cái này khó nói lắm... bạn thử đưa cái file mà bạn nói đang chậm ấy lên đây xem!
ANH TUẤN


up file lên như thế nào hướng dẫn tớ với , hoặc cho tớ mail tớ gửi xem giúp tớ , thanks nhé

anhtuan1066
06-03-08, 07:41 PM
He... he...
Chẳng trách nào bạn ko tìm ra dc nguyên nhân... Trong file của bạn có hàng đóng Object "ẩn mặt"... Điều này tôi đã từng nói mấy lần trên diển đàn rồi: Khi bạn kiểm tra file mà thấy dung lượng tăng bất thường thì có thể nghĩ ngay là trong file có rất nhiều Object...
Giã sử file gốc lúc đầu bạn vô tình vẽ 1 đường thẳng, 1 đường tròn hay object gì đó, nhưng bạn lại quên xóa đi... Khi bạn copy dử liệu sang sheet khác, hay đơn giãn là fill công thức thì sẽ có hàng đóng phiên bản những object ấy dc tạo thành... Lâu ngày, cứ copy, paste rồi fill công thức.. đến ngày nào đó sẽ như file của bạn... Ko chậm mới lạ!
Cách kiểm tra: Mở file, vào từng sheet một, bấm Ctrl + G, bấm nút Special, chọn mục Objects, OK... nếu máy tính im re ko báo gì thì có nghĩa là trong file đang tồn tại Object... lúc đó bạn đừng thao tác thêm gì cả, đơn giãn là bấm Delete trên bàn phím, Save file rồi kiểm tra lại dung lượng...
Hi... hi...
File của bạn có dung lượng 9M, sau khi tôi xóa xong các object thì chỉ còn 100K...
Xem file tôi sửa lại nhé... Ko nhanh ko ăn tiền!
ANH TUẤN
(Hãy kiểm tra tất cả những file trên máy tính của bạn theo cách tôi vừa nêu)

exel2007
06-03-08, 08:12 PM
cám ơn bạn nhiều nhé , tôi hỏi thêm với cùng là file như thế tôi dung office xp (excel) điền dữ liệu đến dòng thứ 5000 thì vẫn mờ được nhưng ở office 2003 thì không thể mờ được và nó báo là bị hỏng file bạn chỉ giùm với thanks nhé

anhtuan1066
06-03-08, 08:35 PM
Giờ thế này nhé: Chúng ta lại tiếp tục làm thí nghiệm... Bạn tạo file 5000 dòng trên Excel2003, sau đó mở thử, nếu nó báo lỗi thì bạn gữi lên đây!
Chúng ta chỉ có thể từng bước thí nghiệm thế thôi.. chứ khó đoán nguyên nhân lắm!
Mến
ANH TUẤN

exel2007
06-03-08, 08:49 PM
Giờ thế này nhé: Chúng ta lại tiếp tục làm thí nghiệm... Bạn tạo file 5000 dòng trên Excel2003, sau đó mở thử, nếu nó báo lỗi thì bạn gữi lên đây!
Chúng ta chỉ có thể từng bước thí nghiệm thế thôi.. chứ khó đoán nguyên nhân lắm!
Mến
ANH TUẤN


Nói chung rất cám ơn bạn , nếu tôi để nguyên như cũ thì file bị hỏng nhưng khi làm như hướng dẫn của bạn lại mở được như bình thường , vì file nó quá lớn cho nên không thể up lên được ,
thanks bạn nhiều

anhtuan1066
06-03-08, 08:58 PM
Tôi chỉ các bạn thêm 1 mẹo đễ nhận biết sự tồn tại của Object... Khi các bạn bấm Ctrl + G\Special\Objects, OK xong, nếu thấy mấy tính im re thì tất nhiên trong file có Object rồi, tuy nhiên rất khó nhìn thấy nó... Vậy lúc này các bạn hãy chọn và tô màu cho nó, sẽ phát hiện dc ngay...
Chẳng hạn như tô màu đỏ, khi ấy ta sẽ thấy có hàng đóng những chấm đỏ li ti trên bảng tính... Nhiều đến mức kéo Scroll bar ko chạy nỗi luôn... Nhưng khi bấm nút Delete trên bàn phím thì bảng tính tự nhiên trở nên mượt mà ngay!
----------------
Lưu ý thêm: Các Object thuộc thanh Control Toolbox thì ko xài chiêu này dc... Trước tiên bạn phải bật chế độ Design Mode lên, sau đó mới thực hiện các bước tôi đã nói ở trên... nếu ko thì dù Object có tồn tại, máy tính vẫn báo "No objects found"
Mến
ANH TUẤN

exel2007
06-03-08, 09:10 PM
----------------
Lưu ý thêm: Các Object thuộc thanh Control Toolbox thì ko xài chiêu này dc... Trước tiên bạn phải bật chế độ Design Mode lên, sau đó mới thực hiện các bước tôi đã nói ở trên... nếu ko thì dù Object có tồn tại, máy tính vẫn báo "No objects found"
Mến
ANH TUẤN[/quote]

bạn nói giúp thêm Design Mode nằm ở đâu

salam
06-03-08, 09:33 PM
----------------
bạn nói giúp thêm Design Mode nằm ở đâu

Bạn nhấn chuột phải lên khu vực tools bar xong chọn visual basic cho hiện thanh visual basic lên bạn rê chuột đến biểu tượng e ke với bút đó. nó sẽ hiện tên desing mod click vòa đó nhé.

anhtuan1066
07-03-08, 08:53 AM
Bạn nhấn chuột phải lên khu vực tools bar xong chọn visual basic cho hiện thanh visual basic lên bạn rê chuột đến biểu tượng e ke với bút đó. nó sẽ hiện tên desing mod click vòa đó nhé.
Tốt nhất nên click phải thanh Toolbars, chọn Control Toolbox... vì ta đang nói đến các Object thuộc thanh này mà... Sẳn tiện bạn tập sử dụng mấy công cụ này luôn đễ làm thí nghiệm
Trong thanh này cũng có 1 nút có biểu tượng thước Eke, và lưu ý tất cả các Object thuộc thanh này chỉ làm việc dc khi đã Exit Design Mode
ANH TUẤN

Tuyvan
07-03-08, 11:17 AM
Nhưng cách tô màu cho Objects mình làm thế nảo? Bạn chỉ giúp nhé, mình vừa phát hiện các file của mình cũng bị vụ này. Thanks bạn nhiu nhiu.

salam
07-03-08, 11:22 AM
Nhưng cách tô màu cho Objects mình làm thế nảo? Bạn chỉ giúp nhé, mình vừa phát hiện các file của mình cũng bị vụ này. Thanks bạn nhiu nhiu.
Muốn tô mầu bạn click chuột phải vào object chọn properties trong cửa sổ Properties chọn backcolor chọn mầu theo ý bạn.

anhtuan1066
07-03-08, 11:33 AM
Trong trường hợp này nhất định ko dc click chuột phải hay làm bất cứ thao tác nào trên bảng tính cả... Vì có thấy Object nằm ở đâu mà Click...
Cứ chọn biểu tượng Fill Color trên toolbars mà tô
ANH TUẤN

phong3si
10-09-10, 08:59 PM
Trong trường hợp này nhất định ko dc click chuột phải hay làm bất cứ thao tác nào trên bảng tính cả... Vì có thấy Object nằm ở đâu mà Click...
Cứ chọn biểu tượng Fill Color trên toolbars mà tô
ANH TUẤN
Trường hợp của mình như thế này:
Sau khi coppy khoảng 100 sheet từ các worsheet khác nhau làm thành 1 sheet tổng hợp,rồi dùng hàm SUMIF(trên 20.000 dòng) để cập nhật Công nợ của từng KH qua các ngày,lúc đó máy chạy rất chậm,và báo callulating Cells.
-Tôi đã làm như trên hướng dẫn vẫn không khả quan hơn(xóa Object thì không có,chọn chế độ Callulation là Automatic)
-Vậy xin hỏi có cách nào để khắc phục tình trạng trên không?(cấu hình máy tính cũng tàm tạm.hi)
Thanks!

boyxin
10-09-10, 09:15 PM
Trường hợp của mình như thế này:
Sau khi coppy khoảng 100 sheet từ các worsheet khác nhau làm thành 1 sheet tổng hợp,rồi dùng hàm SUMIF(trên 20.000 dòng) để cập nhật Công nợ của từng KH qua các ngày,lúc đó máy chạy rất chậm,và báo callulating Cells.
-Tôi đã làm như trên hướng dẫn vẫn không khả quan hơn(xóa Object thì không có,chọn chế độ Callulation là Automatic)
-Vậy xin hỏi có cách nào để khắc phục tình trạng trên không?(cấu hình máy tính cũng tàm tạm.hi)
Thanks!

Muốn khám bệnh thì bệnh nhân cần đến cơ sở y tế gặp bác sĩ mới có thể ra bệnh

Muốn xem file mắc chứng tật gì thì cũng vậy

Đoán bệnh theo kiểu "nghe hơi nồi chõ" thế này thì ... --=--

HoangHacVT
27-03-11, 02:05 PM
He... he...
Chẳng trách nào bạn ko tìm ra dc nguyên nhân... Trong file của bạn có hàng đóng Object "ẩn mặt"... Điều này tôi đã từng nói mấy lần trên diển đàn rồi: Khi bạn kiểm tra file mà thấy dung lượng tăng bất thường thì có thể nghĩ ngay là trong file có rất nhiều Object...
Giã sử file gốc lúc đầu bạn vô tình vẽ 1 đường thẳng, 1 đường tròn hay object gì đó, nhưng bạn lại quên xóa đi... Khi bạn copy dử liệu sang sheet khác, hay đơn giãn là fill công thức thì sẽ có hàng đóng phiên bản những object ấy dc tạo thành... Lâu ngày, cứ copy, paste rồi fill công thức.. đến ngày nào đó sẽ như file của bạn... Ko chậm mới lạ!
Cách kiểm tra: Mở file, vào từng sheet một, bấm Ctrl + G, bấm nút Special, chọn mục Objects, OK... nếu máy tính im re ko báo gì thì có nghĩa là trong file đang tồn tại Object... lúc đó bạn đừng thao tác thêm gì cả, đơn giãn là bấm Delete trên bàn phím, Save file rồi kiểm tra lại dung lượng...
Hi... hi...
File của bạn có dung lượng 9M, sau khi tôi xóa xong các object thì chỉ còn 100K...
Xem file tôi sửa lại nhé... Ko nhanh ko ăn tiền!
ANH TUẤN
(Hãy kiểm tra tất cả những file trên máy tính của bạn theo cách tôi vừa nêu)

Chào Anh Tuấn,
File excel của mình cũng bị tình trạng tương tự. Bạn xem dùm mình cái file đính kèm với nhé. File này mình cũng copy paste từ file khác sang, mới đầu OK nhưng sau đó thì ì à ì ạch. Mở Window Task Manager ra xem thấy EXCEL.EXE chạy lên hơn 700.000KB ( trong khi RAM của máy có 1GHB).

Mình đã delete hết những dòng trống phía dưới, rồi làm như Anh Tuấn nói, bấm ^G chọn Special, chọn Objects, nhưng chưa kịp bấm delete hay tô màu máy đã đơ rồi. Khi đơ thanh toolbar cũng biến mất tiêu luôn. Và con trỏ chuột biến thành hình tròn quay vòng vòng hoài. Hôm qua mình kiên quyết chờ xem nó quay đến khi nào, nó quay từ 4g30 đến 5g30 con trỏ chuột hình tròn mới biến mất. Mừng quá tưởng nó xong ai dè bấm chuột vào nó lại quay tiếp.

Đã xem không có sheet nào ẩn trong đó (Nút Unhide sheet không sáng) . Cũng không có cái name nào trong Name Manager.

Trong file mình gửi có 2 sheet, sheet H là một phần của sheet House,lấy ra để kiểm tra, sheet nào cũng bị tình trạng đó hết.

Bạn xem dùm, mình rất cám ơn!

ptm0412
27-03-11, 05:47 PM
Sheet H có 39697 Object dạng rectangle.
Sheet House có 13495 cái.

Bạn dùng code này để xoá chúng, mỗi lần xoá 1000 cái cho đỡ sốt ruột:


Sub del()
For i = 1 To 1000
ActiveSheet.Shapes(i).Delete
Next
End Sub

Còn nếu can đảm muốn xem nó là cái giống gì thì chạy code này, thử với 100 cái:


Sub abc()
For i = 1 To 100
With ActiveSheet.Shapes(i)
.Left = 0
.Top = Cells(i, 1).Top
.Width = Cells(i, 1).Width
.Height = Cells(i, 1).Height / 2
.Fill.ForeColor.SchemeColor = 10
End With
Next
End Sub

ndu96081631
27-03-11, 06:39 PM
Chào Anh Tuấn,
File excel của mình cũng bị tình trạng tương tự. Bạn xem dùm mình cái file đính kèm với nhé. File này mình cũng copy paste từ file khác sang, mới đầu OK nhưng sau đó thì ì à ì ạch. Mở Window Task Manager ra xem thấy EXCEL.EXE chạy lên hơn 700.000KB ( trong khi RAM của máy có 1GHB).

Mình đã delete hết những dòng trống phía dưới, rồi làm như Anh Tuấn nói, bấm ^G chọn Special, chọn Objects, nhưng chưa kịp bấm delete hay tô màu máy đã đơ rồi. Khi đơ thanh toolbar cũng biến mất tiêu luôn. Và con trỏ chuột biến thành hình tròn quay vòng vòng hoài. Hôm qua mình kiên quyết chờ xem nó quay đến khi nào, nó quay từ 4g30 đến 5g30 con trỏ chuột hình tròn mới biến mất. Mừng quá tưởng nó xong ai dè bấm chuột vào nó lại quay tiếp.

Đã xem không có sheet nào ẩn trong đó (Nút Unhide sheet không sáng) . Cũng không có cái name nào trong Name Manager.

Trong file mình gửi có 2 sheet, sheet H là một phần của sheet House,lấy ra để kiểm tra, sheet nào cũng bị tình trạng đó hết.

Bạn xem dùm, mình rất cám ơn!
Chào bạn!
Đã xóa toàn bộ Objects cho bạn rồi đây
Dùng Excel 2007 thì khó lòng mà xóa được (sẽ bị treo máy vì file này quá nhiều Objects)... Tuy nhiên, nếu bạn Save As thành xls, xong mở file bằng Excel 2003 là có thể xóa thoải mái
Xong chuyện lại Save As thành xlsx...
File của bạn sau khi xóa objects xong, dung lượng còn 135 KB

HoangHacVT
27-03-11, 06:44 PM
Cám ơn bác Du rất nhiều! Tuy nhiên mấy bữa nay nó chạy chậm quá, tức điên lên tưởng thằng nào gửi vài con vi rút, mình cài lại win và remove cái ofice 2003 luôn rồi bác ạ. Đúng cái này là "chết vì thiếu hiểu biết"

HoangHacVT
27-03-11, 06:50 PM
Cám ơn ptm0412 nhiều nhé!

Cho mình hỏi, nó có tới hơn ba chín ngàn cái thì mình sửa quách cái code từ 1-10.000 luôn được không? Trước khi hỏi không có can đảm thử, sợ nó toi luôn.

Mình hỏi thêm là, cứ copy cai code của bạn vào trong phần module là nó tự động chạy phải không? Bạn thông cảm mình hỏi câu này, trình độ VB của mình mới ở hang vịt thôi.

ndu96081631
27-03-11, 06:59 PM
Cám ơn ptm0412 nhiều nhé!
Cho mình hỏi, nó có tới hơn ba chín ngàn cái thì mình sửa quách cái code từ 1-10.000 luôn được không? Trước khi hỏi không có can đảm thử, sợ nó toi luôn.
Mình hỏi thêm là, cứ copy cai code của bạn vào trong phần module là nó tự động chạy phải không? Bạn thông cảm mình hỏi câu này, trình độ VB của mình mới ở hang vịt thôi.
Vấn đề nằm ở chổ: Bạn đã xóa bằng tay không được (treo máy) nên sư phụ ptm0412 mới đề xuất giải pháp XÓA TỪ TỪ, mỗi lần 1000 cái thôi ---> Nếu bạn sửa thành 10,000 thì... Ẹc... Ẹc... ăn chắc vũ như cẩn (nó lại treo máy)
Còn tôi, dùng Excel 2003 để xóa lại không bị hiện tượng treo này (may quá)

HoangHacVT
27-03-11, 07:02 PM
Sheet H có 39697 Object dạng rectangle.
Sheet House có 13495 cái.

Bạn dùng code này để xoá chúng, mỗi lần xoá 1000 cái cho đỡ sốt ruột:


Sub del()
For i = 1 To 1000
ActiveSheet.Shapes(i).Delete
Next
End Sub

Còn nếu can đảm muốn xem nó là cái giống gì thì chạy code này, thử với 100 cái:


Sub abc()
For i = 1 To 100
With ActiveSheet.Shapes(i)
.Left = 0
.Top = Cells(i, 1).Top
.Width = Cells(i, 1).Width
.Height = Cells(i, 1).Height / 2
.Fill.ForeColor.SchemeColor = 10
End With
Next
End Sub

Chào ptm0412

Bạn chỉ luôn cho cách làm cái code này chạy, mình copy nó vô phần module, save lại thành file .xlsm, uống hết 1 ly cà phê mà nó vẫn còn chậm? ( uống cà phê cũng có hơi vội vàng vì đang cần gấp mà, nhưng dù sao cũng mất cỡ chừng hết.... thới gian uống 1 ly cà phê)....

Đùa tí cho tỉnh táo bạn đừng giận..

HoangHacVT
27-03-11, 07:17 PM
Vấn đề nằm ở chổ: Bạn đã xóa bằng tay không được (treo máy) nên sư phụ ptm0412 mới đề xuất giải pháp XÓA TỪ TỪ, mỗi lần 1000 cái thôi ---> Nếu bạn sửa thành 10,000 thì... Ẹc... Ẹc... ăn chắc vũ như cẩn (nó lại treo máy)
Còn tôi, dùng Excel 2003 để xóa lại không bị hiện tượng treo này (may quá)

Bác ơi, bác cho hỏi luôn là bác chuyển sang 2003 rồi cũng xoá y như anh Tuấn chỉ phải không? Mình đã làm như bác bảo, chuyển sang 2003 ( hihi, remove cái ốp phít 2003 rồi nhưng mà vẫn chuyển được) làm y chang như vậy và nó vẫn thành hình cái vòng tròn quay từ từ bác ơi. Nói thiệt là máy ở công ty cũng hơi cùi. Bác làm cái này mất bao lâu vậy bác?

Bác cho hỏi thêm là làm cách xoá từ từ như sư phụ ptm0412 thì nó chậy mật bao lâu, dòm 2 cái file chạy vòng vòng hoài đau tim quá...

Hỏi thêm nữa là nếu mình dùng cái file bác đã chỉnh sửa copy đè lên cái file của mình thì cũng làm mất hết các objects đang có chứ?

Cám ơn bác nhiều!

ptm0412
27-03-11, 07:26 PM
Không cần module, không cần save as xlsm, không cần gì cả.
Bạn trở ra quán cafe. Kêu 1 ly đen không đường.
Mở file lên
Copy code vào VBA, sheet nào cũng được, workbook cũng được. Để nguyên số 1000.
Nhấn nút Run trên toolbar hoặc nhấn F5
Uống 1 hớp nhỏ cafe
Rít 1 hơi thuốc lá. Xong 1000 chú.
Nhấn F5 chạy lần 2
Lại 1 hớp nhỏ cafe, 1 hơi thuốc lá.
....

Hết sheet này, thì quay ra Excel, chọn sheet kế (chỉ chọn cho mở ra thôi, không đụng đến celll xiếc gì hết)
Quay ra VBA nhấn F5 chạy tiếp.

....

Xoá hết rồi, xoá luôn macro, lưu xlsx bình thường.

ndu96081631
27-03-11, 07:36 PM
Bác ơi, bác cho hỏi luôn là bác chuyển sang 2003 rồi cũng xoá y như anh Tuấn chỉ phải không? Mình đã làm như bác bảo, chuyển sang 2003 ( hihi, remove cái ốp phít 2003 rồi nhưng mà vẫn chuyển được) làm y chang như vậy và nó vẫn thành hình cái vòng tròn quay từ từ bác ơi. Nói thiệt là máy ở công ty cũng hơi cùi. Bác làm cái này mất bao lâu vậy bác?

Vâng! Tôi làm giống vậy! Tức Ctrl + G\Special và check mục Objects, bấm OK rồi bấm nút Delete trên bàn phím
Nhưng như tôi đã nói ở trên:
- Tôi Save As file thành xls
- Xong, tôi mở file xls trên bằng Excel 2003
Vậy nếu bạn lại mở file xls trên bằng Excel 2007 thì... cũng bằng không
----------------
Làm theo cách tôi vừa nói ở trên, xóa hết Objects trong vòng 10s (vấn đề là bạn phải có Office 2003)
------------------------------


Xoá hết rồi, xoá luôn macro, lưu xlsx bình thường.
Thậm chí là khỏi cần làm gì... cứ lưu bình thường là macro sẽ tự (bị) xóa
Ẹc... Ẹc...

ptm0412
27-03-11, 08:00 PM
Thậm chí là khỏi cần làm gì... cứ lưu bình thường là macro sẽ tự (bị) xóa
Ẹc... Ẹc...
Lưu bình thường nó cũng hỏi lôi thôi, lại chạy lên GPE hỏi nên nhấn Yes hay No. (Khà khà, dự phòng cả cho chuyện đó nữa mà)

Lưu ý là với cách select Object rồi xoá bằng tay, nếu không biết cách sẽ không xoá được những object ẩn. Xoá object hiện trước, vào option cho hiện và xoá object ẩn sau. Chứ file đang ì ạch vậy, lại còn vào option cho hiện ra hết rồi mới xoá, thì e rằng 1 ly cafe không đủ.

Xoá bằng VBA thì bảo đảm xoá cả object ẩn.

HoangHacVT
27-03-11, 08:24 PM
Không cần module, không cần save as xlsm, không cần gì cả.
Bạn trở ra quán cafe. Kêu 1 ly đen không đường.
Mở file lên
Copy code vào VBA, sheet nào cũng được, workbook cũng được. Để nguyên số 1000.
Nhấn nút Run trên toolbar hoặc nhấn F5
Uống 1 hớp nhỏ cafe
Rít 1 hơi thuốc lá. Xong 1000 chú.
Nhấn F5 chạy lần 2
Lại 1 hớp nhỏ cafe, 1 hơi thuốc lá.
....

Hết sheet này, thì quay ra Excel, chọn sheet kế (chỉ chọn cho mở ra thôi, không đụng đến celll xiếc gì hết)
Quay ra VBA nhấn F5 chạy tiếp.

....

Xoá hết rồi, xoá luôn macro, lưu xlsx bình thường.

Hahhaha, được rồi, được rồi! Thì ra là phải run nữa mà mình không biết. Mình khoái uống cà phê không đường nhưng không bie61t hút thuốc, thay vào đó mình ngồi ngắm em gái bán cà phê......

Nhờ ngắm ẻm mình mới nghiệm ra điều này, mình chạy cái code tô màu mấy cái objects của bạn, thấy hiện ra một đống đỏ lè nhưng chỉ nằm ở cột A thôi, và cũng chừng từ dòng 100 đổ lại. Bạn nói sheet H chừng 39 ngàn cái, theo mình tính phải hớp chừng 40 ngụm cà phê mới đủ, tính ra khoảng 10 ly. Uống 10 ly lúc 8 giờ tối chác chết nên mình uống ăn gian...... mới uống có 1 ly, nói chung là bấm run chừng dưới 1 chục lần là mấy cái đống đỏ lè đó nó tiêu hết trơn rồi.

Vậy có phải là mình xoá 1000 cái nó khuyến mãi thêm 3000 nữa không? hay còn mấy chú objects nào khác trong đó mà mình không biết?

Bạn cho mình cái code đếm còn bao nhiêu chú đi để mình bấm run tiếp. Hiện giờ bấm run thì nó vẫn còn chạy, nhưng không xem được mấy chú kia "đai" đến đâu cũng kém phần thú vị....

Làm phiền hoài bạn đừng giận nhé!

ptm0412
27-03-11, 08:42 PM
Cái đoạn code tô màu đỏ lè đó, nó chỉ tô 100 ku đầu tiên, và lôi về hết cột A, mỗi cái resize bằng 1 nửa cell cho bạn dễ ngắm. Chứ nó nằm lung tung khắp nơi và không bằng nhau như vậy đâu.

Quên nói bạn 1 điều là, cái số lẻ ngàn trong đợt chạy cuối cùng ấy, ngắm ẻm chục lần mới hết, vì 1 lần tuy gọi là 1000, nhưng nó chỉ xoá 1 nửa cái số lẻ đó.
39 lần, thì hết đủ 39000 ku, còn hơn 900 ku thì bị vầy: mỗi lần chạy xoá 1 nửa số, dừng báo lỗi. Chạy lại, xoá 1 nửa số còn lại. Cứ thế, ngắm ẻm 1 chục lần.

Hoặc là bạn xài 1 trong 2 code này cho cái lẻ ngàn cuối cùng:


Sub del2()
MsgBox "Còn " & ActiveSheet.Shapes.Count & " ku"
For i = ActiveSheet.Shapes.Count to 1 step -1
ActiveSheet.Shapes(i).Delete
Next
MsgBox "Còn " & ActiveSheet.Shapes.Count & " ku"
End Sub
Sub del3()
MsgBox "Còn " & ActiveSheet.Shapes.Count & " ku"
For Each Shp in ActiveSheet.Shapes
Shp.Delete
Next
MsgBox "Còn " & ActiveSheet.Shapes.Count & " ku"
End SubCâu lệnh MsgBox là thông báo số object còn lại trước và sau khi chạy code.

HoangHacVT
27-03-11, 08:58 PM
Cái đoạn code tô màu đỏ lè đó, nó chỉ tô 100 ku đầu tiên, và lôi về hết cột A, mỗi cái resize bằng 1 nửa cell cho bạn dễ ngắm. Chứ nó nằm lung tung khắp nơi và không bằng nhau như vậy đâu.

Quên nói bạn 1 điều là, cái số lẻ ngàn trong đợt chạy cuối cùng ấy, ngắm ẻm chục lần mới hết, vì 1 lần tuy gọi là 1000, nhưng nó chỉ xoá 1 nửa cái số lẻ đó.



Hehehe, cám ơn sư phụ!

Cái code của sư phụ thiếu & phia sau chữ "còn" phải không? Copy vào chạy luôn nó báo lỗi đấy sư phụ. Nhưng mình thêm dấu & vào rối chạy ok rồi.

không cần ngắm ẻm chục lần nữa vì mình đối số 1000 thành 3000 rồi, cám ơn sư phụ thật nhiều lần nữa nhé!

ngocnt295
21-04-11, 11:02 AM
Các bác cho em hỏi: các file excel của em dạo này chạy chậm lắm, ngồi chờ để làm 1 thao tác đến phát bực... hix... e thử tìm object j đó để xóa nhưng toàn báo là "no object found"... VB thì em mù tịt...
Các bác bắt bệnh hộ em với....
Thanks!

ptm0412
21-04-11, 12:04 PM
Các bác cho em hỏi: các file excel của em dạo này chạy chậm lắm, ngồi chờ để làm 1 thao tác đến phát bực... hix... e thử tìm object j đó để xóa nhưng toàn báo là "no object found"... VB thì em mù tịt...
Các bác bắt bệnh hộ em với....
Thanks!

Bạn xem tuyệt chiêu số 15 (http://www.giaiphapexcel.com/forum/showthread.php?14768-Nh%E1%BB%AFng-tuy%E1%BB%87t-chi%C3%AAu-trong-Excel&p=109446#post109446)

Những bí quyết sau đây có thể giúp bạn nếu bạn có 1 file Excel có kích thước lớn bất thường.
Có khi nào bạn bị bội thực do cố ăn mà chưa tiêu hoá kịp chưa? File Excel cũng thế. Nó bị phình ra là do bạn cố nhồi nhét đủ thứ vào bắt nó phải thực hiện, nó phải nuốt trọng chứ không kịp nhai, hậu quả là nó sẽ không làm việc như ý muốn.

Ngoài ra bạn đã kiểm tra name rác chưa?

Nếu vẫn không được thì bạn phải gởi file lên thôi.

banglv2110
18-05-11, 05:23 PM
Copy trong exel 2007 rat cham
Minh cu copy 4 dong nao day tren file nay rat cham
Copy nhieu dong cang cham, em gưi file dinh kem mong cac pác guip do
Các pac giup em voi

cutifight
10-10-13, 12:10 AM
Tôi chỉ các bạn thêm 1 mẹo đễ nhận biết sự tồn tại của Object... Khi các bạn bấm Ctrl + G\Special\Objects, OK xong, nếu thấy mấy tính im re thì tất nhiên trong file có Object rồi, tuy nhiên rất khó nhìn thấy nó... Vậy lúc này các bạn hãy chọn và tô màu cho nó, sẽ phát hiện dc ngay...
Chẳng hạn như tô màu đỏ, khi ấy ta sẽ thấy có hàng đóng những chấm đỏ li ti trên bảng tính... Nhiều đến mức kéo Scroll bar ko chạy nỗi luôn... Nhưng khi bấm nút Delete trên bàn phím thì bảng tính tự nhiên trở nên mượt mà ngay!
----------------
Lưu ý thêm: Các Object thuộc thanh Control Toolbox thì ko xài chiêu này dc... Trước tiên bạn phải bật chế độ Design Mode lên, sau đó mới thực hiện các bước tôi đã nói ở trên... nếu ko thì dù Object có tồn tại, máy tính vẫn báo "No objects found"
Mến
ANH TUẤN
Chào anh Tuấn. mình có cũng gặp trường hợp là dung lượng file excel lớn bất thường. File gốc chỉ có 1 MB, nhưng mình làm động tác copy dữ liệu không lấy dữ liệu ẩn (theo cách F5/special/ visible cell only) thì khi copy và pase thì file mới lớn hơn 80MB, anh Tuấn có thể chỉ cách khắc phục vấn đề này không? cảm ơn anh.

iamken
07-02-14, 03:58 PM
Có bác nào pro làm ơn xem dùm em file này với được không?
File có dung lượng lớn và thao tác rất chậm.
Mình cảm ơn nhiều!

vu3cis
14-03-14, 07:49 AM
Các bác giúp em file này với.
Của em cũng bị chạy chậm mà chưa rõ nguyên nhân.
http://www.mediafire.com/view/natckqmava9way2/TOTAL_REPORT.xlsx

phucbugis
14-03-14, 09:00 AM
Các bác giúp em file này với.
Của em cũng bị chạy chậm mà chưa rõ nguyên nhân.
http://www.mediafire.com/view/natckqmava9way2/TOTAL_REPORT.xlsx

chào bạn,

- nguyên nhân là do file bạn có quá nhiều textbox thừa (rác) + row, column thừa
- để kiểm tra số liệu cuối cùng của 1 sheet bạn dùng tổ hợp phím Ctrl+End

Sheet BUY_Cntr:
- thực tế chỉ 372 row, trong khi check ô cuối cùng chứa số liệu lại là WVV32111 (-> thừa rất nhiều row, column)
- có đến 18299 textbox rác.

SELL-Cntr:
- vị trí cuối ở tại WVX33870
- cũng có textbox an?

Các sheet khác, bạn cũng kiểm tra tương tự vậy.

'- - -
- mình đã dùng code để xóa các shape tại Sheet BUY_Cntr, SELL-Cntr. Bạn vào copy comment của file cũ qua nhé.
- nhưng vẫn chưa biết cách xóa các row, column thừa +-+-+-+--> nếu có thể bạn tạo 1 sheet mới chuyển số liệu qua (chỉ copy số liệu, ko copy nguyên sheet) rồi xóa sheet cũ đi.

bạn tải file mới về check xem có cải thiện tốc độ hơn ko? :-=
https://www.mediafire.com/?yyn72jbo699g2c2
'- - -
tham khảo thêm bài sau để biết cách xóa các shape:
File Excel khi làm rất nặng (http://www.giaiphapexcel.com/forum/showthread.php?90153-File-Excel-khi-l%C3%A0m-r%E1%BA%A5t-n%E1%BA%B7ng)