Newacc mến,
Mình tự hỏi không biết vấn đề của bạn có phải là vấn đề của nhiều người không? Vì sao một file lại có thể nhỏ đi gấp 10 lần mà vẫn lưu giữ được đúng ngần ấy dữ liệu? Vì sao một file ảnh dạng *.bmp khi Save As dưới dạng *.gif thì dung lượng lại nhỏ đi? Vì sao một file dạng *.doc khi chuyển sang dạng *.rft thì dung lượng lại tăng lên? Vì sao một file khi chuyển sang dạng *.pdf thì dung lượng có lúc lại tăng lên, có lúc lại nhỏ đi?
Vấn đề là ở chỗ chương trình ứng dụng đó quản lý dữ liệu nội tại ở trong nó như thế nào
Trước hết, ta có thể phân chia dữ liệu trong Excel thành 2 loại như sau : Một là cơ sở dữ liệu nội tại, những dữ liệu loại này nằm trong worksheet. Hai là cơ sở dữ liệu ngoại vi, là những dữ liệu được quản lý tiên tiến hơn, chúng gồm Access, dBase, FoxPro, SQL Server 2000, và Oracle
Dữ liệu được quản lý như thế nào mà được gọi là tiên tiến? Xin thưa, nếu thảo luận về Database Management System (DBMS) chúng ta sẽ không bao giờ đi đến điểm kết thúc. Chỉ biết rằng, một cơ sở dữ liệu nội tại của Excel là cách quản lý dữ liệu kém nhất trong số tất cả các kiểu quản lý dữ liệu khác. Bởi vì một DBMS thì chứa những dữ liệu ở dạng thô, còn một cơ sở dữ liệu nội tại chứa trong worksheet thì chứa các công thức, định dạng, và hình ảnh, ... Khi một worksheet được mở ra, thì toàn bộ cơ sở dữ liệu nội tại của nó phải được nạp vào bộ nhớ, cơ sở dữ liệu ngoại vi thì không như vậy
Tôi xin dùng khái niệm “hướng đối tượng” để minh họa cho vấn đề này. Nếu đối tượng ở đây là một worksheet, thì khi bạn tạo một file Excel mới, mặc dù chưa có một dữ liệu nào trong bất kỳ một ô nào của nó, thì dung lượng của file này đã lớn hơn 10KB rồi. Vì sao lại thế? Là bởi vì đối tượng đó phải lưu trữ trong mình nó ...một cái gì đó, chính xác hơn là nó phải lưu trữ những đối tượng khác. Worksheet đó chắc chắn phải có đủ ngần ấy hàng và ngần ấy cột, không hơn, không kém
Giả sử bạn bôi màu đỏ cho một ô, điều đó có nghĩa là bạn cũng đã gọi tất cả các thuộc tính khác dùng để quản lý cho ô đó. Lúc này ta có : thuộc tính màu của ô = red, thuộc tính giá trị của ô = “”, thuộc tính viền dưới của ô = false,... cứ như vậy, hàng trăm thuộc tính của ô đó phải được xác định
Nếu đối tượng ở lớp dưới được gọi đến, ví dụ như là có một siêu liên kết (hyperlink) trong bảng tính, thì đầy đủ các thuộc tính của nó cũng được gọi luôn. Nếu bạn dùng hết tất cả các ô trong bảng tính, dữ liệu có nguy cơ không thể kiểm soát được
Vậy ta phải làm gì khi một file được cho là dung lượng quá lớn?
Việc tách file đó ra thành các file khác nhau, mỗi file quản lý một phần dữ liệu là chuyện đương nhiên phải làm. Một file Excel không đủ sức để có thể quản lý một khối lượng dữ liệu lớn. Ta có thể dùng một file làm file tồn quỹ tiền mặt, một file khác làm file sổ theo dõi chi tiết chi phí. Để kết nối dữ liệu giữa hai file này, ta dùng một phương pháp mà ai cũng dùng rồi, nhưng chỉ đến ngày 28/12/1999 mới được đăng ký bản quyền bởi một người sở hữu hộp thư
vancongvinh@yahoo.com nào đó. Ta có thể xem chi tiết phương pháp này tại bài Diễn đàn\ Tin học\ Xưởng phần mềm\ Ứng dụng Excel lập UNC, trong file attached UNC2000.xls, sheet Help (Oái, hình như chính là anh erpvn nhà mình)
Thế rồi trong bản thân mỗi sheet, ta phải làm sao cho lượng dữ liệu là nhỏ nhất. Nhấn Ctrl_End, lùi vào phía trên bên trái bảng tính để tìm ô cuối cùng của khu vực dữ liệu, loại bỏ tất cả các định dạng không cần thiết như border, màu sắc ở phía ngoài khu dữ liệu, xóa bỏ tất cả các hàng và cột để trống phía ngoài khu dữ liệu. Nhấn Alt+F+S và kiểm tra xem Ctrl_End đã về đúng ô cuối cùng của khu vực dữ liệu chưa. Gỡ bỏ tất cả những gì không cần thiết, chẳng hạn như các siêu liên kết cũng chiếm tương đối nhiều bộ nhớ. Sau đó xóa bỏ các sheet không cần thiết trong workbook
Thế là xong các bước cơ bản, nếu muốn làm một dự án nghiêm túc, bạn không thể không nghiên cứu các chương trình ứng dụng là Microsoft Binder và Project Manager. Đây cũng chính là cấp quản lý cao nhất đối với dữ liệu kế toán bằng Excel
Cuối cùng, nếu file của bạn vẫn còn to quá, thì bạn nên xem lại bài của anh SUNF ở trên. File đó rất có thể đã bị chèn những mã nguồn bí mật theo cách thức mà virus lây vào. Phương pháp gỡ bỏ những mã này thì anh SUNF đã nói rồi. Nhưng cơ chế hoạt động của nó ra sao và cách thức diệt trừ tận gốc thì tôi chưa biết để có thể thảo luận với bạn lúc này
Chào mừng bạn đến với Excel Fans Club, vui lòng cung cấp cho tôi địa chỉ email của bạn để liên lạc với nhau khi cần thiết