1. Trang chủ
  2. » Giáo án - Bài giảng

30 tuyệt chiêu trong excel

106 19 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 106
Dung lượng 1,97 MB

Nội dung

Bạn vẫn có thể loại bỏ những phần không cần tham chiếu ra khỏi công thức, mà lại bảo đảm được những dữ liệu mới thêm vào sẽ tự động được cập nhật trong tham chiếu của công thức, bằng [r]

(1)

01 Tùy biến cửa sổ làm việc bảng tính. 02 Nhập liệu đồng thời vào nhiều sheet.

03 Ngăn chận người sử dụng thực số hành động định.

04 Ngăn chặn nhắc nhở không cần thiết.

05 Ẩn sheet cho người dùng dùng lệnh unhide để ra.

06 Tự thiết kế bảng tính mẫu (template). 07 Tạo mục cho Sheet Workbook. 08 Giới hạn vùng cuộn bảng tính.

09 Khóa bảo vệ có chứa cơng thức.

10 Sử dụng định dạng theo điều kiện để tìm liệu trùng.

11 Tìm liệu xuất nhiều lần công cụ Conditional Formating.

12 Tạo riêng cơng cụ cho riêng bảng tính cụ thể. 13 Sao chép công thức giữ nguyên tham chiếu tương đối (giống sao chép tham chiếu tuyệt đối).

14 Gỡ bỏ liên kết ma.

15 Giảm kích thước file Excel bị phình to bất thường. 16 Cứu liệu từ bảng tính bị lỗi.

17 Sử dụng Data-Validation danh sách nguồn nằm Sheet khác.

18 Điều khiển Conditional Formating checkbox.

19 Đánh dấu ô chứa công thức Conditional Formatting. 20 Đếm cộng định dạng có điều kiện.

21 Tơ màu dịng xen kẽ.

22 Tạo hiệu ứng 3D bảng tính hay ơ.

23 Bật, tắt chức Conditional Formatting checkbox. 24 Dùng nhiều List cho Combobox.

25 Tạo danh sách xác thực thay đổi theo lựa chọn từ danh sách khác.

26 Sử dụng chức thay (Replace) để gỡ bỏ ký tự không mong muốn.

27 Chuyển đổi số dạng văn sang số thực. 28 Trích xuất liệu số chuỗi VBA. 29 Tùy biến thích bảng tính.

30 Sort thứ tự dựa nhiều ba cột. Lời nói đầu

Trong q trình thực bảng tính, mắc phải vơ số lỗi, mắc phải sai lầm ngớ ngẩn, thường không để ý tới giúp xử lý bảng tính nhanh hơn, gọn gàng Xin hân hạnh giới thiệu đến bạn sách "Một ngày một tuyệt chiêu", lược dịch từ Excel Hacks, hai tác giả David và Raina Hawley Những "tuyệt chiêu" giúp bạn tránh những lỗi, làm việc với bảng tính cách có hiệu

(2)

về số thủ thuật quy tắc bản, điều giúp bạn thực hiện "tuyệt chiêu" nói đến phần sau cách dễ dàng Excel phần mềm bảng tính mạnh, bạn làm điều khơng thể tin với Nhưng khơng may, có nhiều người thiết kế bảng tính với q nhiều "lo xa", cẩn thận mức cần thiết, làm cho trở nên phức tạp đáng bị Phần mở đầu mách cho bạn số thủ thuật quy tắc mà bạn làm theo, bạn thấy chúng hiệu quả.

Xin nói thêm, tất "chiêu" trình bày sau đây, đa phần viết cho Excel 2007 Nếu áp dụng cho phiên trước, chúng thích bên cạnh: (Với Excel 2003 trở trước, thì )

Quy tắc 80/20

Có lẽ việc quan trọng thực bảng tính dành thời gian để nghiên cứu, xem xét cách bố trí liệu, tính trước việc cần làm Và đừng nghĩ sau hồn thành, tơi khơng cần phải thêm vào liệu cơng thức khác, bạn ln làm ngược lại Điều có nghĩa rằng, bạn nên dành khoảng 80% thời gian để lên kế hoạch cho bảng tính khoảng 20% thời gian để thực bảng tính đó

Cho dù rằng, việc khơng cần thiết với bảng tính nhỏ, bảo đảm rằng, bạn quan tâm đến điều tơi vừa nói trên, lâu dài, bạn tránh cực nhọc phải phải sửa sửa lại bảng tính mình, dễ dàng thực bảng tính lớn sau dành cho thời gian để lên kế hoạch thực Nên nhớ rằng, bảng tính phải ln mang lại cho người dùng thơng tin xác, khơng phải thơng tin xác trường hợp

Những mẹo nhỏ cấu trúc bảng tính

Một lỗi mà hay mắc phải tạo bảng tính, khơng thiết lập trình bày liệu "theo cách mà Excel tính mong đợi" Sau số lỗi phổ biến hay mắc phải thiết lập bảng tính:

 Bố trí liệu nhiều bảng tính (WorkBook) khác  Bố trí liệu nhiều trang tính (WorkSheet) khác  Bố trí liệu nhiều bảng (Table) khác

 Có hàng trống cột trống khối liệu (database)

 Bỏ trống có liệu giống (cùng chung ngày, chung đơn vị tính, v.v )

Ba điểm muốn nói đến điều: Bạn nên ln cố gắng để giữ mối liên quan liệu liên tục cùng một bảng liệu Tôi thấy nhiều bảng tính khơng trình bày theo quy tắc đơn giản này, vậy, bảng tính khơng thể tận dụng tối đa tính mạnh mẽ Excel PivotTable,

(3)

Khơng phải ngẫu nhiên mà Excel có 1.048.567 hàng (65.536 hàng Excel 2003 trở trước) mà lại có 16.384 cột (256 cột Excel 2003 trở trước) Điều có ý nói rằng, bạn nên thiết lập liệu với tiêu đề cột nằm hàng cùng, liệu có liên quan nằm liên tục bên tiêu đề nó Nếu bạn có liệu lặp lại hai lần nhiều lần hàng cột (các ngày tháng, loại đơn vị tính chẳng hạn), bạn chống lại cám dỗ bỏ trống

Hãy cố gắng xếp (sort) liệu bạn có thể Excel có nhiều cơng cụ để tìm kiếm tham chiếu cơng thức, số khơng nhỏ đó, địi hỏi liệu phải xếp theo thứ tự hợp lý

Việc phân loại cũng giúp ích đáng kể cho tốc độ xử lý số hàm

Những mẹo nhỏ định dạng

Ngồi việc thiết kế cấu trúc bảng tính cho hợp lý, việc định dạng cho vấn đề cần bàn đến Mặc dù bảng tính nên định dạng cho dễ đọc dễ theo dõi, nghĩ đến việc sử dụng thời gian cho có hiệu Hãy luôn định dạng thật đơn giản Rất nhiều người lãng phí thời gian vào việc định dạng bảng tính khơng thiết phải làm vậy, điều làm ảnh hưởng đến hiệu công việc Việc thường xuyên áp dụng định dạng phức tạp cho bảng tính cịn làm cho tăng kích thước, cho dù bảng tính bạn trông giống tác phẩm nghệ thuật, lại nỗi sợ hãi cho người khác Một kiểu phối màu tốt nhất mà bạn nên áp dụng cho bảng tính, là màu đen, màu trắng màu xám

Một gợi ý nữa, nên bỏ trống vài hàng cùng (ít hàng) Những hàng dùng cho tính nâng cao sau, chẳng hạn Advanced Filter, dùng làm vùng điều kiện cho công thức xử lý liệu (DSUM, DMAX, v.v )

Cũng đừng quan tâm đến việc canh lề cho liệu Theo mặc định, Excel canh phải cho liệu kiểu số, canh trái cho liệu kiểu text Và đó là điều tốt rồi, đừng thay đổi nó. Nếu bạn thay đổi kiểu canh lề, bạn khơng xác định tức khắc liệu kiểu số hay liệu kiểu text; cịn gây nhầm lẫn cho người khác tham chiếu đến ơ, nhiều họ tưởng liệu số, thật text Nếu bạn thay đổi kiểu canh lề mặc định, bạn bị nhức đầu với sau Chỉ có tiêu đề bảng tính hưởng ngoại lệ mà thơi

(4)

Trộn ô (merge cells) vấn đề Có số cơng thức macro chạy với ô trộn Cho nên, thay trộn ơ, bạn dùng chức "Center across selection", nằm Home nhóm ➝ Alignment Nhấn vào mũi tên bên phải, mở hộp thoại

Format với tab Alignment chọn sẵn Bạn sử dụng trượt dọc khung Horizontal để chọn Center Across Selection Hoặc bạn right-click chọn Format Cells từ shortcut menu Với Excel 2003 trở trước, bạn mở hộp thoại từ menu Format ➝Cells (Ctrl+1)

Nên sử dụng Center Across Selection thay cho Merge Cells

Những mẹo nhỏ dùng công thức

Một sai lầm lớn sử dụng cơng thức cho tham chiếu đến toàn các cột mảng liệu Điều làm cho Excel phải kiểm tra hàng ngàn ơ, khơng nói hàng triệu, để chắn khơng bỏ sót liệu Ví dụ, giả sử bạn có mảng liệu từ A1 đến H1000, bạn định dùng hàm tìm kiếm Excel để trích liệu cần thiết Bởi bạn cịn phải bổ sung thêm liệu vào mảng này, nên để ăn, bạn tạo tham chiếu cơng thức đến tồn hàng cột mảng Khi đó, tham chiếu bạn A:H, cụ thể hơn, A1:H65536 Bạn nghĩ làm bạn khơng lo lắng thêm liệu vào mảng

(5)

nó làm cho bảng tính trở nên ì ạch, chí khơng chạy Bạn loại bỏ phần không cần tham chiếu khỏi công thức, mà lại bảo đảm liệu thêm vào tự động cập nhật tham chiếu công thức, cách dùng Table (List Excel 2003 trở trước) sử dụng Name động

Một vấn đề thường xảy với bảng tính lớn, mà cấu hình máy lại nhỏ, Excel tính tốn chậm liệu cập nhật Để giải vấn đề này, bạn thường khun chuyển đổi chế độ tính tốn Excel thành dạng Manual: Nhấn vào nút Office góc trái phía bảng tính, chọn Excel OptionsFormulas (với Excel 2003 trở trước, chọn menu

ToolsOptionsCalculations), chọn Manual :

(6)

Chọn Manual Caculation với Excel 2003

Tuy nhiên, lời khun khơng hay cho lắm, mà mang tính đối phó Một bảng tính có cơng thức tính tốn, bạn chạy bảng tính chế độ tính tốn Manual, bạn có thông tin cũ mèm, chưa cập nhật Nếu muốn có thơng tin xác, bạn phải nhấn F9 Nhưng, chắc chắn lúc bạn cũng nhớ điều này! Vậy bạn thử cân nhắc xem: Nếu cần thắng chân bị kẹt làm cho xe bạn chạy chậm lại, bạn sửa lại cần thắng chân, gỡ bỏ thắng chân tin tưởng hoàn toàn vào thắng tay? Nghĩa là, bảng tính bạn chạy chậm, bạn sửa lại công thức cho chạy nhanh hơn, đặt vào chế độ tính tốn tay mà làm tiếp? Hầu không làm điều này, nhiều người không ngần ngại đặt bảng tính họ chế độ tính tốn Manual Nếu bạn thấy cần phải đặt bảng tính chế độ tính tốn Manual làm việc được, bạn nên suy nghĩ đến việc thiết kế lại bảng tính

Cơng thức mảng nguyên nhân vấn đề Chúng lựa chọn tốt tham chiếu đến ô riêng lẻ Nhưng bạn dùng chúng để tham chiếu đến dãy liệu lớn, thì sử dụng chúng càng tốt. Khi có số lượng lớn mảng tham chiếu đến dãy liệu lớn, hiệu suất bảng tính bị ảnh hưởng, đơi dừng hẳn ln, bạn bắt buộc phải dùng chế độ tính tốn tay

(7)

Table, đề cập đến phần thứ loạt Mặc dù

PivotTable phức tạp bạn sử dụng lần đầu tiên, chúng tơi thành thật khun bạn học cách sử dụng Một bạn làm chủ PivotTable, ngày bạn tự hỏi tơi sống mà khơng có PivotTable!

Trước kết thúc phần mở đầu, xin nói điều này: Nếu bạn chẳng nhớ (vì tơi nói nhiều q), bạn cần nhớ chuyện thôi: Excel chạy tốt hơn tất liệu bạn xếp liên tục với cùng bảng Nó giúp cho bạn thực hành chiêu sau cách dễ dàng hơn.

Trong chiêu sau đây, có số biểu tượng nằm đầu chiêu:

 Áp dụng cho tất phiên Excel  Chỉ áp dụng cho Excel 2007

 Chỉ áp dụng cho phiên trước Excel 2007  Chỉ áp dụng cho Excel 2003 Excel XP

 Chỉ áp dụng cho Excel 2000

Chiêu thứ 1: Tùy biến cửa sổ làm việc bảng tính

Excel cho phép hiển thị đồng thời nhiều bảng tính cho phép tùy biến cách hiển thị xếp chúng Sau thiết lập tùy biến, chúng ta có thể lưu thành tập tin workspace (không gian làm việc) xlw để sử dụng lại sau này.

Đôi khi làm việc Excel, bạn cần phải có nhiều

workbook mở hình bạn để làm cho dễ dàng sử dụng hay xem liệu từ nhiều bảng tính Trong mô tả cách thực tổ chức cửa sổ làm việc cách gọn gàn có tổ chức

Đầu tiên, bạn mở tất bảng tính mà bạn cần làm việc:

Vào Office | Open…, giữ phím Ctrl trong chọn tập tin bảng tính cần mở | nhấn nút Open để mở tập tin (E2003: File | Open )

(8)

Nếu chọn kiểu xếp Tiled (lát gạch) cửa sổ làm việc bảng tính hình sau:

(9)

Nếu chọn kiểu Vertical (thẳng đứng) bảng tính xếp nằm cạnh sau:

(10)

Khi cửa sổ bảng tính xếp gọn gàng, bạn dễ dàng thao tác di chuyển liệu cửa sổ

Để sử dụng lại thiết lập sau này, bạn lưu thành tập tin workspace Các bước thực sau:

Chọn ngăn View | nhóm Window chọn Save Workspace (E2003: File | Save Workspace…) | nhập tên cho workspace hộp File Name, chọn nơi lưu nhấn nút OK Tập tin workspace có phần mở rộng xlw

Muốn chuyển đổi bảng tính chế độ tồn hình bạn cần kích chuột hai lần lên Title (tiêu đề) cửa sổ bảng tính Bạn nhấn nút Maximize cửa sổ bảng tính hành để phóng to cửa sổ nhấn nút Close để đóng bảng tính sau hồn tất cơng việc với cửa sổ

(11)

làm việc phù hợp với nhu cầu sử dụng bạn mà không cần phải tốn thời gian xếp, tổ chức bảng tính lần sử dụng sau

nguồn : giải pháp excel

Chiêu thứ 2: Nhập liệu đồng thời vào nhiều sheet.

Thơng thường người dùng Excel có liệu muốn nhập vào nhiều sheet khác Bạn dùng cơng cụ Group sheet lại để nhập liệu đồng thời Nhưng có cách khác nhanh chóng linh hoạt bạn dùng vài dịng lệnh VBA

Nhưng phải nói đến công cụ Group nhỉ? Công cụ Group dùng để nhập liệu vào nhiều sheet lúc có nhiều người chưa dùng đến Nó dùng để kết nối sheets với phạm vi work book

1 Group sheet lại tay:

Để nhóm sheet lại, bạn việc click chọn sheet thứ nhất, nơi bạn nhập liệu từ bàn phím vào, vừa nhấn Ctrl, vừa nhấn vào tên sheet khác mà bạn muốn nhập liệu đồng thời Khi bạn gõ vào sheet hành, liệu tự động nhập vào sheet cịn lại nhóm Điệp vụ hồn tất nhanh chóng (nghe giống 007 nhỉ)

Để khỏi tình trạng group, bạn việc click chọn sheet khác ngồi nhóm, click chuột phải lên tên sheet nhómbất kỳ, chọn Ungroup Sheets Hoặn bạn muốn gỡ số sheet khỏi nhóm, Ctrl click vào tên sheet

Khi hay nhiều sheet Group với nhau, tiêu đề Windows có chữ [Group] (tronh ngoặc vng) Nhìn vào bạn biết bạn cịn tình trạng group sheets

Trừ bạn có cặp mắt sắc chim ưng, bén dao cạo, thường bạn khơng để ý đến dấu hiệu này, bạn quên không ungroup cơng việc xong Chính tơi khuyên bạn thực xong thao tác nhập liệu hàng loạt vào sheet, phải ungroup chúng

(12)

có thèm quan tâm bạn nhập liệu vùng đâu?

2 Group sheet lại cách tự động:

Bạn giải vấn đề cách dùng đoạn code VBA đơn giản Để đoạn code làm việc được, phải đặt kiện riêng sheet bạn muốn Để vào trang soạn thảo code sheet nào, click phải chuột vào tên sheet chọn View Code

Bạn chọn kiện sheet, kiện liên quan đến sheet đổi chọn, thay đổi nội dung ơ, kích hoạt sheet, thoát khỏi sheet, … để thực thi đoạn code VBA

Thường bạn đưa thẳng đến trang soạn thảo code riêng sheet bạn chọn View Code hướng dẫn Bạn kiểm tra lại thực thuộc sheet bạn chọn hay khơng cách nhìn vào cửa sổ VBA Project bên trái, bạn thấy dạng thư mục This Workbook – Sheetname sheet chọn khơng bạn phải tìm sheet bạn cần doubled click

Trước tiên bạn phải đặt name cho vùng ô bạn muốn nhập liệu trùng sheet, giả sử “MyRange”

Sau gõ đoạn code vào khung soạn thảo bên phải: PHP Code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("MyRange"), Target) Is Nothing Then Sheets(Array("Sheet5", "Sheet3", "Sheet1")).Select

Else

Me.Select End If End Sub

(13)

Cần nhắc lại đoạn code phải nằm sheet khai báo Array, sheet mà bạn nhập liệu từ bàn phím

Khi bạn hoàn tất, bạn click chọn sheet5, đoạn code kiểm tra xem bạn chọn có nằm vùng đặt tên “MyRange” không Nếu đúng, code Group sheet lại với để bạn nhập liệu hàng loạt sheets Nếu khơng phải, ungroup chúng cách đơn giản kích hoạt sheet hành Dùng đoạn code tiện lợi chỗ giải phóng bạn khỏi việc phải nhớ Group bắt đầu UnGroup kết thúc nhập liệu vùng chọn

Bây bạn muốn liệu nhập vào sheet chọn, vị trí khác nhau, dùng đoạn code khác:

PHP Code:

Private Sub worksheet_Change(ByVal Target As Range) If Not Intersect(Range("MyRange"), Target) Is Nothing Then With Range("MyRange")

.Copy Destination:=Sheets("Sheet3").Range("A1") Copy Destination:=Sheets("Sheet1").Range("D10") End With

End If End Sub

(14)

Đoạn code hoạt động khác với đoạn code Khi bạn thay đổi nội dung đó, code xác định xem hành có nằm vùng

"MyRange" hay khơng, phải copy ngun vùng "MyRange" (của sheet5) paste vào đồng thời ô A1 sheet1 D10 sheet2 Ngược lại

khơng làm

Chiêu thứ 3: Ngăn chận người sử dụng thực số hành động định

Mặc dù Excel có hỗ trợ việc bảo vệ cho bảng tính (Protect Sheet, Protect Workbook), công cụ thô sơ không bao gồm việc cho phép người sử dụng số đặc quyền hạn chế - trừ bạn làm theo chiêu sau

Bạn quản lý việc tương tác với bảng tính bạn cách giám sát đáp ứng kiện Các kiện (event), hành động xảy bạn làm việc với bảng tính Sheet Những kiện thường bao gồm việc mở (open) bảng tính, lưu (save) nó, đóng (close) Bạn bảo Excel chạy mã Visual Basic (macro) cách tự động xảy kiện

Tuy nhiên, bạn nên biết rằng, người sử dụng vượt qua tất mã bảo vệ Visual Basic bẳng cách vơ hiệu hóa việc thực thi macro: Nhấn nút OfficeExcel OpionsTrust CenterTrust Center Setting

Macro Settings [E2003: Tools | Macro | Security] Nếu đặt mức độ an toàn

Disable all macros with notification [E2003: mức Medium], mở bảng tính có chứa macro, Excel xuất hộp thông báo cho phép người sử dụng có hội để tắt macro Nếu đặt mức độ an toàn

(15)

phải dùng macro có bảng tính, người sử dụng chọn mức an tồn thích hợp phép sử dụng macro

Ngăn chận việc lưu lại bảng tính với tên khác

Bạn thiết lập thuộc tính "Read only" cho bảng tính nào, cách nhấn OfficeSave, nhấn nút Tools, chọn General Options[E2003: File | Save As | Tools | General Options] kích hoạt hộp kiểm Read only recommended Việc ngăn chận người sử dụng lưu lại thay đổi bảng tính, họ lưu lại bảng tính với tên khác lưu vào nơi khác

Tuy nhiên, điều bạn muốn khơng cho lưu lại bảng tính bạn với tên khác, không cho lưu vào nơi khác Nói cách khác, bạn muốn người khác lưu lại bảng tính với tên gốc nó, khơng chép Điều đặc biệt hữu dụng có nhiều người sử dụng chung bảng tính, bạn khơng muốn ổ cứng đầy dẫy bảng tính này, cho dù với tên khác, hay thư mục khác

Sự kiện Before Save mà tơi nói đến có từ thời Excel 97 Đúng tên gọi nó, kiện xuất trước bảng tính lưu, cho phép bạn can thiệp kịp thời việc lưu lại bảng tính, đưa cảnh báo, khơng cho Excel lưu bảng tính

Trước tự thực điều vào bảng tính, chắn chắn bạn lưu lại bảng tính bạn Bởi việc đưa đoạn code sau vào mơt bảng tính chưa lưu, gây cho bạn nhiều rắc rối

Để đưa đoạn code sau vào bảng tính, bạn chọn DevelopeVisual Basic

(hoặc nhấn Alt+F11), nhấp đúp chuột vào mục ThisWorkbooktrong khung

(16)

Sử dụng Quick access menu (trong Excel 2003) để nhập code áp dụng cho workbook

Bạn nhập đoạn code sau vào cửa sổ VBE Sau nhập xong, nhấn

Alt+Q để trở Excel, lưu lại bảng tính: PHP Code:

Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _ Cancel As Boolean)

Dim lReply As Long

If SaveAsUI = True Then

lReply = MsgBox("Sorry, you are not allowed to save this workbook as another name." _

& "Do you wish to save this workbook?", vbQuestion + vbOKCancel) Cancel = (lReply = vbCancel)

If Cancel = False Then Me.Save Cancel = True

(17)

Thử tí Bạn nhấn Ctrl+S (hoặc gọi lệnh Save) xem Bảng tính bạn lưu bình thường Bây bạn nhấn F12 (hoặc gọi lệnh Save as), bạn gặp cảnh báo, nói bạn khơng thể lưu lại bảng tính tên khác, bạn vơ hiệu hóa macro

Nói thêm, bạn lưu bảng tính có chứa macro code Excel 2007, bạn nhắc nhở bạn phải lưu file dạng cho phép macro hoạt động (macro-enable workbook), có phần mở rộng *.xlsm, khơng thể lưu dạng bình thường (*.xlsx)

Ngăn chận việc in bảng tính

Đôi bạn phải rời bàn làm việc mà quên tắt máy (chuyện chuyện thường), cho dù bạn làm công việc ngăn chận việc có chép bảng tính bạn ngồi, nói trên, bạn cịn lo xa hơn, muốn bảng tính khơng bị in bạn vắng mặt Nếu thật bạn muốn vậy, bạn dùng kiện Before Print Hãy nhập đoạn code sau cửa sổ VBE:

(18)

Private Sub workbook_BeforePrint(Cancel As Boolean) Cancel = True

MsgBox "Sorry, you cannot Print from this workbook", vbInformation End Sub

Nhấn Ctrl+Q để quay Excel lưu lại Từ bây giờ, có có muốn lệnh in bảng tính này, khơng có xảy Dịng lệnh MsgBox đoạn code tùy chọn, bạn nên sử dụng nó, để lại thơng tin đó, để người khác khơng tưởng lầm máy in họ bị hư, chương trình Excel có lỗi!

Nếu bạn muốn ngăn chận in phần bảng tính, ví dụ khơng cho in Sheet1 Sheet2, bạn sử dụng đoạn code sau:

PHP Code:

Private Sub workbook_BeforePrint(Cancel As Boolean) Select Case ActiveSheet.Name

Case "Sheet1", "Sheet2" Cancel = True

MsgBox "Sorry, you cannot print this sheet from this workbook", _ vbInformation

End Select End Sub

Dĩ nhiên bạn thêm vào Sheet có bảng tính bạn Chỉ việc nhập tên vào hàng có lệnh Case, tách biệt Sheet với Sheet khác dấu phẩy, nhớ nhập tên Sheet cặp dấu nháy kép Trong trường hợp bạn muốn ngăn chận không cho in Sheet mà thôi, bạn cần nhập tên Sheet (trong cặp nháy kép) sau chữ Case, không cần gõ dấu phẩy

Ngăn chận việc chèn thêm Sheet vào bảng tính

Excel có chức Protect Workbook, khơng cho phép thay đổi cấu trúc bảng tính thêm, xóa, di chuyển, hay đổi tên Sheet Tuy nhiên, bạn muốn ngăn chận việc thêm Sheet thơi, cịn việc khác cho phép Đoạn code sau giúp bạn làm việc đó:

PHP Code:

Private Sub Workbook_NewSheet(ByVal Sh As Object) Application.DisplayAlerts = False

MsgBox "Sorry, you cannot add any more sheets to this workbook", _ vbInformation

Sh.Delete

(19)

Khi có chèn thêm Sheet vào bảng tính, trước tiên Excel xuất hộp cảnh cáo: "Xin lỗi, bạn thêm Sheet vào bảng tính này", lập tức, Excel xóa Sheet thêm vào nút OK hộp cảnh báo nhấn Công dụng dịng lệnh

Application.DisplayAlerts = False khơng hiển thị hộp cảnh báo xác nhận việc xóa Sheet Excel

Một cách khác để ngăn chận việc chèn thêm Sheet vào bảng tính bạn chọn

Review Ribbon, chọn lệnh Protect Workbook

nhómChanges, chọn lệnh Protect Structure and Windows [E2003: Tools | Protection | Protect Workbook đánh dấu kiểm vào tùy chọn

Structure] nhấn OK (có thể đặt password thích) Tuy nhiên, nói đầu bài, việc ngăn chận hết thao tác với Sheet bảng tính

nguồn : giải pháp excel

Chiêu thứ 4: Ngăn chặn nhắc nhở không cần thiết Exel luôn cảnh báo nhắc nhở bạn xác nhận hành động thao tác bạn Bài hướng dẫn bạn cách loại bỏ thông báo nhắc nhở

Các kiểu cảnh báo mà đề cập câu hỏi mà Excel hỏi bạn có cho macro hoạt động hay khơng thơng báo hành động xóa trang bảng tính Sau số loại cảnh báo Excel:

Thơng báo kích hoạt Macro trong workbook khơng có macro

Lỗi phát sinh bạn thực ghi macro workbook, bạn xóa tất mã lệnh macro lần mở workbook sau Excel cảnh báo bạn workbook có chứa macro

 Xóa macro: vào ngăn Developer | chọn Macro | chọn macro nhấn Delete để xóa [E2003: Tools | Macro | Macros].

 Bạn nhận thơng báo kích hoạt macro thiết lập mức an toàn “Disable all macro with notification” [E2003: mức Medium]

 Nếu mức an toàn thiết lập “Enable all macors” [E2003: mức Low] macro tự động kích hoạt mà khơng có tiếng kêu cảnh báo

 Nếu mức an toàn “ Disable all macros without notification” [E2003: mức High] macro tự động bị khóa lại khơng phép thực thi

Khi bạn ghi macro, Excel chèn module vào để chứa lệnh bạn hàm Vào lúc mở bảng tính, Excel kiểm tra xem bảng tính có chứa module khơng chúng rỗng hay chứa mã lệnh Việc xóa macro bảng tính xóa tất mã lệnh chứa bên module mà khơng xóa module – giống việc uống cạn lon sửa bỏ lại vỏ hộp sửa vào lại tủ lạnh Do vậy, bạn cần phải xóa module theo hướng dẫn sau

(20)

Các nút lệnh ngăn Developer

Nếu không thấy cửa sổ Project bạn vào View chọn Project Explorer nhấn tổ hợp phím Ctrl+R

Cửa sổ Project Explorer

Nhấp chuột lên ký hiệu (+) để xem thánh phần bị ẩn nhánh cửa sổ Project tìm đến module Bạn nhấp phải chuột lên module chọn lệnh Remove Module từ thực đơn ngữ cảnh Nếu hỏi có xuất module thành tập tin chọn No Nhấn tổ hợp ALT+Q để đóng cửa sổ VBE

Thơng báo nhắc nhở lưu trữ khơng có thay đổi

Bạn nhận thấy đơi bạn mở bảng tính xem số thơng tin mà Excel nhắc nhở bạn lưu lại thay đổi Personal Macro Workbook bạn không thay đổi Có thể bạn biết chưa, bạn có sử dụng hàm volatile (là hàm có sử dụng phương thức volatile) Personal Macro Workbook

(21)

Hộp thoại Record Macro

Vì thế, bạn chắn khơng có thay đổi bảng tính hàm volatile hoạt động âm thầm Điều tính thay đổi Excel cảnh báo việc lưu trữ không tồn thay đổi bảng tính

Nếu bạn muốn Excel dừng việc thông báo lưu trữ thay đổi mà bạn không thực hiện, bạn có vài cách thực Cách dễ thấy ta không lưu hàm volatile Personal Macro Workbook nên xóa bỏ tất hàm volatile có Hoặc, bạn cần hàm volatile không muốn Excel lưu lại thay đổi khơng nhìn thấy bạn thêm đoạn code sau vào Workbook module Personal Macro Workbook để đánh lừa bảng tính lưu

PHP Code:

Private Sub Workbook_BeforeClose(Cancel As Boolean) Me.Saved = True

End Sub

[/SIZE]

Để mở Personal Macro Workbook bạn vào View | Unhide nhóm Window [E2003: Window | Unhide], chọn Personal.xls từ hộp thoại Unhide nhấp nút OK Nhấn tổ hợp phím ALT+F11 để vào cửa sổ VBE, sau nhấp phải chuột lên ThisWorkbook từ Personal.xls cửa sổ Project chọn View Code nhập đoạn mã vào Sau nhập xong, bạn nhấn tổ hợp phím ALT+Q để đóng sổ VBE lại

Tất nhiên, bạn có sử dụng hàm volatile để tính tốn lại bảng tính bạn muốn lưu thay đổi bạn dùng đoạn mã sau thay cho đoạn mã nêu

PHP Code:

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Me.Save End Sub

[/SIZE][/FONT]

Đoạn mã lưu lại Personal Macro Workbook cách tự động mở Dừng cảnh báo Excel macro ghi

(22)

thi Ví dụ bạn ghi macro xóa worksheet thực thi macro bạn nhận thơng báo xác nhận việc xóa worksheet Muốn tắt cảnh báo này, bạn làm hướng dẫn sau:

Chọn ngăn Developer | Macros nhóm Code nhấn ALT+F8 [E2003: Tools | Macro | Macros] để gọi hộp thoại Macro Tại Macro in chọn “All Open Workbooks”, chọn tên macro mà bạn vừa ghi nhấn nút Edit Đặt trỏ lên trước dòng lệnh thủ tục nhập vào dòng lệnh sau:

Application.DisplayAlerts = False

Tại sau dòng lệnh cuối cùng, bạn thêm vào: Application.DisplayAlerts = True

Macro bạn sau thêm dòng lệnh giống sau: PHP Code:

Sub MyMacro( )

'

' MyMacro Macro

Application.DisplayAlerts = False ActiveSheet.Delete

Application.DisplayAlerts = True End Sub

Lưu ý rằng, bạn bật chức cảnh báo Excel lại dòng lệnh cuối macro Nếu bỏ dòng lệnh này, bạn không nhận cảnh báo điều gây nguy hại bạn vơ tình thực thao tác nhầm lẫn nghiêm trọng mà khơng nhận cảnh báo để xác nhận hành động

nguồn : giải pháp excel [/FONT]

Chiêu thứ 5: Ẩn sheet cho người dùng dùng lệnh unhide để ra

Đơi bạn có thơng tin sheet bạn khơng muốn người dùng đọc Bạn muốn có khu vực (có thể sheet) ghi chép liệu, công thức, chi tiết vụn vặt khơng muốn cho nhìn thấy

Thí dụ sheet chứa vùng làm liệu cho Data Validation, Combobox, tên biến giá trị biến dùng làm const VBA, thông tin nhạy cảm thứ

khác Mặc dù bạn dấu sheet cách chọn View Hide mục chọn ➝

Window (đối với Excel 2003 Format Sheet Hide), tốt bạn làm ➝ ➝

cách khác để người dùng chọn View Unhide mục chọn Window (đối với➝

(23)

Bạn dùng chức khố bảng tính, nhìn thấy Hơn bạn khơng thể khố chứa liệu kết nối với control tạo công cụ

Form

Thay vậy, bạn thiết lập trạng thái cho sheet dạng xlVeryHidden Vào Developer Visual Basic nhấn Alt-F11 để vào trang soạn thảo VBE (đối với Excel 2003 vào ➝

menu Tools Macro Visual Basic Editor nhìn bên trái khung Project Explorer,➝ ➝

nếu khơng thấy chọn View - Project Explorer Tìm tên file bấm vào dấu cộng để tên sheet Chọn tên sgeet bạn muốn dấu, mở khung Property cách vào menu View – Property Window (hoặc nhấn F4) Chọn tab Alphabetic, tìm dịng Visible

chọn 2- xlsSheetVeryHidden Nhấn Alt-Q để trở trang tính Excel, lưu thay đổi Sheet bạn chẳng thấy cách thông thường menu

View – Unhide hay Format – Sgeet – Unhide

(24)

Chiêu thứ 6: Tự thiết kế bảng tính mẫu (template)

Nếu bạn thường xuyên phải thực kiểu trình bày cho bảng tính mình, bạn tự thiết kế bảng tính mẫu cho riêng bạn, bảng tính có sẵn tiêu đề, số cột, số hàng nào đó, chí Name cơng thức; đồng thời cịn tạo một hộp thoại riêng vào Thư viện Templates Excel.

(25)

Chọn bảng tính thiết kế sẵn thư viện Templates Excel

Nếu bạn thấy, sử dụng bảng tính đươc thiết kế sẵn này, bạn thấy hữu dụng nó, nhờ mà tiết kiệm thời gian cho việc thiết kế trình bày

Và, công việc, bạn phải thường xun thiết kế bảng tính có cấu trúc giống nhau, nghĩ việc bạn thường làm mở bảng tính có, xóa phần nội dung lưu lại với tên khác, phải không? Nhưng cách làm này, đơi sơ ý, bạn xóa công thức mà bạn hàng để nghĩ ra, phải thời gian cho thao tác xóa Vậy, có bạn nghĩ đến chuyện làm giống Template có sẵn Excel khơng? Để cần loại bảng tính (một bảng lương, bảng chấm cơng, báo giá, v.v ) bạn việc vào Thư viện Templates, chí vào "Thư viện riêng" bạn, lấy mẫu việc nhập số liệu vào? Tiết kiệm thời gian Chiêu thứ giúp bạn thực điều vừa nói

Tạo bảng tính mẫu

(26)

với tiêu đề nó, cơng thức, Name (nếu có) Ví dụ, Template BillingStatement1 có sẵn Excel 2007:

Template BillingStatement1 có sẵn Excel 2007

(27)

Chọn loại file Excel Template cửa sổ Save

(28)

Excel tự động chọn thư mục để lưu Template

(29)

Chọn My Template để mở bảng tính mẫu lưu

(30)

Excel tự động chọn thư mục để lưu Template Tạo tab riêng cửa sổ My Templates

(31)

Nhấn nút Create New Folder để tạo thêm tab cho Template

(32)

Bạn thấy không, cửa sổ New này, có thêm tab "Báo cáo thuế" Hay nhỉ!

Một điều lưu ý, không thừa Tất Template thư mục mà bạn tự tạo này, nằm đây:

C:\Documents and Settings\Owner\Application Data\Microsoft\Template Với Owner tên Acount mà bạn tạo sử dụng Windows Tôi thử thay đổi nơi lưu Template này, không Khi chọn My

Template cửa sổ New Workbook, Excel liệt kê Template nằm đường dẫn mà thơi Do đó, cài đặt lại Windows, bạn hết tất nằm thư mục C:\Documents and Settings Vậy, điều lưu ý là, bạn nên tạo dự phòng cho Template này, cất giữ cẩn thận Sau này, có phải cài đặt lại Windows, bạn việc chép vào chỗ (chính đường dẫn đây), sử dụng tiếp

Chiêu thứ 7: Tạo mục cho Sheet Workbook Nếu bạn tốn nhiều thời gian workbook (bảng tính) với nhiều

worksheet (trang tính), bạn cảm thơng khó khăn việc tìm kiếm trang tính Khi đó, có lẽ ta nên lập mục trang tính có để thuận tiện cho việc điều hướng bảng tính

(33)

Tạo mục thủ công

Cách dễ làm, bạn cần chèn worksheet đăt cho tên, ví dụ tên Index Sau đó, bạn nhận vào tên worksheet có workbook tạo siêu liên kết (hyperlink) đến worksheet tương ứng với tên mà bạn nhập

Để tạo hyperlink bạn chọn tên sheet, sau vào Insert | chọn Hyperlink nhóm Links [E2003: Insert | Hyperlinks] nhấn phím tắt Ctrl+K để mở hộp thoại Insert

Hyperlink

Hộp thoại Insert Hyperlink

Chọn Place in This Document chọn tên Sheet muốn kết nối tới Nhấn nút OK để hoàn tất

Phương pháp phù hợp bảng tính khơng có q nhiều worksheet tên worksheet khơng có thay đổi thường xun, khơng gây nhiều khó khăn cho cơng tác bảo trì trang mục

Tạo mục tự động cách sử dụng VBA

Một cách thay khác sử dụng VBA để tự động tạo mục Đoạn mã sau tự động tạo bảng mục liên kết đến tất worksheet mà bạn có workbook Bảng mục tạo lại worksheet lưu mục chọn Đoạn mã phải đặt private module Sheet chứa Chèn

worksheet vào workbook đặt tên cho Index chẳng hạn Nhấp chuột phải vào tên worksheet vừa tạo chọn ViewCode từ trình đơn ngữ cảnh nhấn tổ hợp phím Alt+F11.

(34)

PHP Code:

Private Sub Worksheet_Activate() Dim wSheet As Worksheet

Dim lCount As Long lCount =

With Me

.Columns(1).ClearContents Cells(1, 1) = "INDEX" End With

For Each wSheet In Worksheets If wSheet.Name <> Me.Name Then lCount = lCount +

With wSheet

.Range("A1").Name = "Start" & wSheet.Index

.Hyperlinks.Add Anchor:=.Range("A1"), Address:="", SubAddress:= _ "Index", TextToDisplay:="Back to Index"

End With

Me.Hyperlinks.Add Anchor:=Me.Cells(lCount, 1), Address:="", SubAddress:= _ "Start" & wSheet.Index, TextToDisplay:=wSheet.Name

End If

Next wSheet End Sub

Nhấn tổ hợp phím Alt+Q để VBE trở cửa sổ bảng tính, sau lưu bảng tính lại Để chạy đoạn mã vừa tạo, bạn dùng chuột chọn sang worksheet khác workbook sau chọn lại worksheet Index để kích hoạt kiện Worksheet_Activate

(35)

Thêm thuộc tính cho workbook

Lưu ý, bạn có thiết lập Hyperlink base (siêu liên kết sở) workbook hyperlink tạo từ đoạn mã hoạt động được, chúng liên kết đến Name workbook hành Khi thuộc tính hyperlink base thiết lập siêu liên kết trỏ đến hyperlink base kết hợp với Name

Thêm thuộc tính Hyperlink base: Vào Office | Prepare | Properties | Document

Properties | chọn Advanced Properties [E2003: File | Properties | Summary] nhập vào hyperlink base Ví dụ nhập vào http://www.giaiphapexcel.com/

Siêu liên kết trước sau thêm Hyperlink base Thêm lệnh gọi mục vào trình đơn ngữ cảnh

(36)

Thêm lệnh “Sheet Index” vào trình đơn ngữ cảnh

Nhấn Alt+F11 để mở cửa sổ VBE, sau nhập đoạn mã sau vào cửa sổ Code ThisWorkbook:

PHP Code:

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)

Dim cCont As CommandBarButton On Error Resume Next

Application.CommandBars("Cell").Controls("Sheet Index").Delete On Error GoTo

Set cCont = Application.CommandBars("Cell").Controls.Add _ (Type:=msoControlButton, Temporary:=True)

With cCont

.Caption = "Sheet Index" OnAction = "IndexCode" End With

End Sub

Tiếp theo, bạn vào Insert | Module nhập vào đoạn mã sau: PHP Code:

Sub IndexCode()

(37)

End Sub

Đoạn mã thực thi bạn chọn lệnh “Sheet Index” từ trình đơn ngữ cảnh bạn phải đặt Module Excel thấy thủ tục

Nhấn Alt+Q để đóng cửa sổ VBE trở bảnh tính Excel Kể từ lúc này, bạn nhấp phải chuột ô worksheet trình đơn ngữ cảnh có thêm lệnh “Sheet Index” giúp bạn điều hướng đến worksheet workbook cách dễ dàng

nguồn : giải pháp excel

Chiêu thứ 8: Giới hạn vùng cuộn bảng tính

Nếu bạn khơng muốn cuộn kéo bảng tính lên xuống qua phải nhiều, bạn có liệu vùng mà khơng muốncho nguời dùng xem, bạn giới hạn vùng nhìn bảng tính phạm vi bạn cho phép

Các bảng tính tạo Excel 2007 có số cột tối đa 16.384, Excel trước 256 (từ A đến IV), có số dịng tối đa 1.048.576 (trước 65.536) Nhưng thường bạn sử dụng hết Bạn giới hạn cho người dùng xem phạm vi đó, cịn liệu nhạy cảm, bạn để ngồi vùng Ngồi cịn hạn chế vơ tình kéo cuộn xuống dịng 500.000 đến lượt người khác la làng kéo chẳng thấy mà xem

Bạn dùng cách đơn giản dấu (Hide) dòng cột muốn dấu cách định nghĩa vùng cho phép xem kích hoạt vùng có liệu

1 Dấu dòng cột:

Cách dễ dấu dịng cột khơng dùng đến:

Trên sheet hành, xác định dịng cuối có liệu, nhấn chọn dịng nó, nhấn thêm lúc Ctrl + Shift + mũi tên xuống để chọn đến cuối dịng cuối (1.048.576) Sau tab Home, chọn Format Hide & Unhide – Hide Rows Excel 2007 Format - Row - Hide 2003 trở trước, click phải chuột chọn Hide

Làm tương tự để dấu cột khơng dùng đến: tìm cột cuối, click chọn cột kế bên, nhấn Ctrl + Shift + mũi tên sang phải, chọn hide columns

(38)

2 Xác định vùng sử dụng Property:

Bằng cách sử dụng Property sheet VBA, bạn ấn định vùng làm việc phạm vi mong muốn Thực sau:

(39)

Quay trở lại bảng tính thử kéo cuộn, ta thấy cuộn xuống đến dịng 50 cuộn ngang đến cột H tối đa, không cuộn

Tuy vậy, Excel khơng lưu tính chất lưu bảng tính, nên lần sau mở file lên phải set Property lại Do ta phải viết đoạn code thực điều kích hoạt sheet Vào vùng soạn thảo code sheet muốn, chọn kiện worksheet_activate: PHP Code:

Private Sub Worksheet_Activate ( ) Me.ScrollArea = "A1:H50"

End Sub

Bây kích hoạt bảng tính, VBA ấn định vùng giới hạn mong muốn Mặc dù vùng bao quanh tăm tối cách trên, bạn cuộn khỏi vùng, bạn cố chọn nằm ngồi vùng cho phép khơng được, kể cột I, J, K dù bạn có ngó thấy để thèm thơi

Thậm chí với đoạn code VBA bạn tạo sau này, có câu lệnh select vùng nằm ngồi vùng cho phép, chọn ngun cột ngun dịng, khơng chọn Để thực thi đoạn code bạn phải cho vào code dòng lệnh:

Đầu code thêm dòng: ActiveSheet.ScrollArea = ""

Cuối code thêm dịng: ActiveSheet.ScrollArea = "$A$1:$G$50" Thí dụ:

(40)

Sub MyMacro( )

ActiveSheet.ScrollArea = "" Range("Z100").Select Selection.Font.Bold = True

ActiveSheet.ScrollArea = "$A$1:$G$50" Sheets("Daily Budget").Select

ActiveSheet.ScrollArea = "" Range ("T500").Select Selection.Font.Bold = False

ActiveSheet.ScrollArea = "$A$1:$H$25" End Sub

Đoạn code chọn ô Z100 sheet hành định dạng in đậm Sau chọn T500 sheet khác, định dạng in thường (không đậm) Trước thực chọn định dạng sheet nào, phải set vùng cuộn sheet “” Sau định dạng,set trả vùng giới hạn cuộn theo mong muốn

3 Chỉ kích hoạt vùng liệu hành:

Phương pháp linh hoạt hơn, tự động giới hạn vùng cuộn bảng tính vừa vùng liệu bảng tính mà bạn đặt code sau:

PHP Code:

Private Sub Worksheet_Activate( )

Me.ScrollArea =Me.UsedRange Address End Sub

Đoạn code chạy bạn kích hoạt bảng tính mà bạn đặt code Dù có hạn chế bạn khơng thể thêm liệu vào dịng cột Bạn mở rộng vùng giới hạn thêm dòng cột đoạn code sau:

PHP Code:

Private Sub Worksheet_Activate() With Me.UsedRange

Me.ScrollArea = Resize(.Rows.Count + 5, Columns.Count + 2).Address End With

End Sub

Còn bạn muốn nữa, nhập liệu thêm cách thoải mái, dùng đoạn code nhằm reset vùng cuộn nguyên sheet:

PHP Code:

Sub ResetScrollArea( ) ActiveSheet.ScrollArea = "" End Sub

(41)

Sau bạn muốn nhập liệu, nhấn Ctrl + W trước nhập liệu Khi nhập liệu xong, cần bạn kích hoạt sheet khác xong quay lại sheet này, vùng cuộn lại bị giới hạn đoạncode (Worksheet_Activate())

nguồn : giải pháp excel [/FONT][/COLOR]

Chiêu thứ 9: Khóa bảo vệ có chứa cơng thức

Chiêu giúp bạn cho phép người khác thay đổi có chứa liệu, nhưng cấm họ thay đổi chứa cơng thức Bạn bảo vệ các có chứa cơng thức mà khơng cần phải bảo vệ tồn trang tính của bạn.

(42)

cho can thiệp vào tất cả, nghĩa khơng làm bảng tính bạn Đơi khi, bạn lại khơng muốn vậy, bạn muốn bảo vệ ô chứa cơng thức thơi, cịn chứa liệu khơng

Có ba giải pháp để thực điều này: Khóa chứa cơng thức, sử dụng chức Data-validation cho ô chứa công thức, tự động bật tắt chức bảo vệ

Khóa ô chứa công thức

Theo mặc định, tất bảng tính khóa (locked), nhiên, chẳng có tác dụng bạn áp dụng lệnh Protect bảng tính Đây cách dễ để áp dụng lệnh Protect cho bảng tính, chứa cơng thức bị khóa, bảo vệ:

Chọn tồn bảng tính, cách nhấn Ctrl+A, nhấn vào vuông nằm giao điểm cột A hàng Rồi nhấn nút phải chuột chọnFormat Cells, tab Protection, bỏ đánh dấu tùy chọn Locked, nhấn OK:

(43)

Dùng hộp thoại Go To Special để chọn có chứa cơng thức

Trong hộp thoại đó, bạn nhấn vào tùy chọn Formulas, cần thiết chọn khơng chọn thêm ô nhỏ (liệt kê loại cơng thức, mặc định chọn), nhấn OK Sau đó, bạn mở lại hộp thoại

Format Cells nói trên, lần bạn đánh dấu vào tùy chọn

Locked, bạn thích ẩn ln cơng thức (khơng cho thấy) đánh dấu vào tùy chọn Hidden, nhấn OK

Việc cuối Protect bảng tính: Chọn Home Ribbon, nhấn vào

Format nhóm Cells, nhấn vào Protect Sheet ; chọnReview

(44)

Chọn Protect Sheet từ Home

Chọn Protect Sheet từ Review

(45)

Bỏ tùy chọn Select locked cells hộp thoại Protect Sheet

Vậy xong Từ bây giờ, ô chứa công thức bạn bảo vệ, khơng xem thấy bạn chọn Hidden, bạn không lo công thức bị can thiệp

Sử dụng Data-validation

Sử dụng Data-validation, đơn giản khơng cho ghi đè vào có chứa công thức, nghĩa không cho sửa công thức Tuy nhiên, phương pháp phịng ngừa cho bạn, nghĩa tránh việc táy máy sửa lại chứa cơng thức, thật ra, "Validation", bạn xóa cơng thức, dán vào liệu bạn thích Nói chung khơng bảo vệ nhiều Nhưng xin nói sơ qua phương pháp này:

Để thực hiện, bạn chọn ô chứa ô công thức chức Go To Specials mà tơi nói Rồi, với ô chứa công thức chọn, bạn gọi Data Validation từ menu Data Ribbon [E2003: Data | Validation] Trong hộp thoại này, chọn tab Settings, chọn Custom cho khung

(46)

Sử dụng Data Validation để bảo vệ ô chứa công thức

Kể từ đây, bạn nhập thứ vào chứa cơng thức, bạn muốn sửa lại cơng thức, có cảnh báo xuất hiện, ngăn không cho bạn nhập vào Xin nhắc lại, phương pháp khơng cấm việc xóa hẳn cơng thức, dán đè thứ vào ô chứa công thức

Tự động bật tắt chức bảo vệ

Phương pháp này, tự động bật chức bảo vệ bảng tính (Protect) bạn chọn khóa (locked), tự động tắt chức bảo vệ bạn chọn khơng bị khóa

Để bắt đầu, bạn chắn ô bạn muốn bảo vệ (ô chứa công thức) khóa, cịn khơng cần bảo vệ khơng bị khóa, tơi trình bày phương pháp thứ Sau đó, bạn nhấn Alt+F11, nhấn vào Sheet mà bạn muốn bảo vệ khóa đó, nhập vào khung soạn thảo đoạn code sau đây:

PHP Code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Locked = True Then

Me.Protect Password:="Secret" Else

Me.Unprotect Password:="Secret" End If

End Sub

(47)

Nếu bạn lo người ta vào khung soạn thảo VBA để xem password, bạn bảo vệ code (khơng cho xem) cách chọn

ToolsVBAProject Properties, chọn tab Properties, chọn Lock Project for Viewing, nhập vào password

Tuy nhiên, phương pháp khơng hoạt động hồn hảo, giúp bạn phần việc bảo vệ công thức Từ khóa Target sử dụng đoạn code để tham chiếu đến ô "active" thời điểm chọn (xin nói thêm, cho dù bạn chọn dãy, dãy đó, có "active" mà thơi, có màu khác với cịn lại) Vì lý này, người chọn dãy (với "active" khơng bị khóa), người xóa tồn dãy này, chức Unprotect tự động bật!

Chiêu thứ 10: Sử dụng định dạng theo điều kiện để tìm liệu trùng

Định dạng theo điều kiện Excel thường sử dụng để xác định giá trị phạm vi cụ thể bảng tính, cải tiến để nhận dạng trùng lắp liệu danh sách bảng Chức định dạng theo điều kiện Excel 2007 cải tiến, hướng dẫn thích hợp cho phiên từ Excel 2003 trước

Mọi người thường xuyên phải nhận diện trùng lắp liệu danh sách bảng, làm thủ công cơng việc nhiều thời gian dễ mắc lỗi Để làm cho công việc dễ dàng hơn, bạn chế biến cơng cụ định dạng theo điều Excel

Ví dụ như, bạn có bảng liệu vùng $A$1:$H$100 Bạn chọn cách chọn – bên trái bảng (A1) kéo chuột đến ô bên phải (H100) Điều quan trọng, ta muốn A1 phải hành (active) vùng lựa chọn Sau vào Format | chọnConditional

(48)

Lệnh định dạng theo điều kiện Excel 2003

Trong hộp thoại Conditional Formatting, bạn chọn Formulas Is tại

Condition 1 nhập công thức sau vào hộp trống bên cạnh: =COUNTIF($A$1:$H$100,A1)>1

Hộp thoại Conditional Formatting

(49)

Hộp thoại Format Cells

Theo bảng số liệu minh họa hầu hết có liệu trùng trừ hai ô H7 H49

Trong công thức định dạng theo điều kiện này, ta sử dụng tham chiếu tương đối cho địa ô cần kiểm tra vùng địa xác định Bằng cách sử dụng định dạng theo điều kiện này, Excel tự động nhận biết địa ô làm điều kiện hàm COUNTIF Cụ thể cơng thức định dạng theo điều kiện ô sau:

Ơ A1 có cơng thức là: =COUNTIF($A$1:$H$100,A1)>1 Ơ A2 có cơng thức là: =COUNTIF($A$1:$H$100,A2)>1 Ơ A3 có cơng thức là: =COUNTIF($A$1:$H$100,A3)>1 …

Ơ B1 có cơng thức là: =COUNTIF($A$1:$H$100,B1)>1 Ơ B2 có cơng thức là: =COUNTIF($A$1:$H$100,B2)>1 …

Định dạng theo điều kiện Excel 2007 có sẵn tính làm giá trị trùng vùng liệu Các bước thực sau:

Chọn vùng liệu | vào ngăn Home | chọn Conditional Formatting | chọn

(50)

Lệnh Duplicate Values Conditional Formatting Excel 2007

Trong hộp thoại Duplicate Values, bạn chọn kiểu Duplicate (hoặc Unique: nhất) chọn định dạng hộp kế bên sau nhấn OK

Hộp thoại Duplicate Values

Chiêu số 11: Tìm liệu xuất nhiều lần công cụ Conditional Formating

(51)

Nếu bạn muốn xác định liệu lần nhiều hơn, bạn dùng Conditional Formating với số lượng nhiều điều kiện, giới hạn cho phép nhớ hệ thống (Nhớ Excel 2003 trở trước, chấp nhận có điều kiện) Sau bạn gán định dạng màu sắc cho điều kiện

Để thực hiện, chọn ô A1 ô bên trái vùng liệu, bấm shif clickvào ô H100 Cần nhắc bạn 1lần nữa, phải làmđúng trìnhtự chọn (activecell) A1 Bây vào tab Home, Conditional Formating,

NewRule mục Style Chọn Use a Formula to determine which cells to format” click chọn “Format values where this formula is true.” Đối với Excel 2003: Format, Conditional Formating, chọn Formula Is) Trong ô trống gõ công thức:

(52)

(53)

_

Nhấn New Rule (trong Excel 2003 chọn vào điều kiện thứ 2), làm tiếp điều kiện, lần công thức là: =COUNTIF($A$1:$H$100,A1)=3

(54)

Nhớ lần chọn màu khác

Kết quả: bạn có có màu khác cho liệu xuất lần, lần, nhiều

Cần nhắc lại chuyện chọn vùng chọn cho ô A1 ô hành, để Excel hiểu điều kiện công thức CountIf Và: Excel 2003 giới hạn điều kiện, Excel 2007 bị giới hạn nhớ hệ thống

Chiêu số 12: Tạo riêng công cụ cho riêng bảng tính cụ thể

Bạn tạo cơng cụ riêng cho mình? Bạn có thấy rằng, công cụ luôn nạp vào Excel, hiển thị, với bảng tính nào, với người sử dụng nào? Có bao giờ, bạn muốn rằng, công cụ tự tạo hiển thị với bảng tính cụ thể mà thơi khơng?

Ví dụ, bạn tự tạo cơng cụ có chứa nút dùng để hỗ trợ việc nhập công thức xử lý bảng (những dấu =, +, -, *, /, nút dùng để xóa hàng, xóa cột, v.v ), tạm gọi công cụ A, phục vụ riêng cho bảng tính B Và bạn muốn, làm để bạn mở bảng tính B, thấy cơng cụ A bạn, cịn mở bảng tính khác, thấy cơng cụ mặc định Excel? Thậm chí cửa sổ Excel, bạn kích hoạt bảng tính B, thấy cơng cụ A, cịn nhấn

Ctrl+Tab để chuyển sang bảng tính khác, cơng cụ A biến mất? Thiết nghĩ, hẳn có lúc bạn muốn điều tơi vừa nói Vì giúp cho cơng cụ Excel ln gọn gàng, ngăn nắp (luôn công cụ mặc định Excel), bạn, mà người khác, khơng có bỡ ngỡ với cơng cụ lạ hoắc; là, mở bảng tính B ra, cần đến cơng cụ A, cịn bình thường chẳng cần

Việc này, khơng có khó Bạn cần chèn đoạn code đơn giản vào "Private module" bảng tính

Trước hết, bạn tạo cho riêng cơng cụ Đặt tên cho "MyCustomToolbar" chẳng hạn

(55)

Nhấn phải chuột vào biểu tượng Excel nhỏ bên trái menu File chọn View Code

Rồi, nhập vào hai đoạn code sau đây: PHP Code:

Option Explicit

- Private Sub Workbook_Activate()

On Error Resume Next

With Application.CommandBars("MyCustomToolbar") Enabled = True

.Visible = True End With

On Error GoTo End Sub

- Private Sub Workbook_Deactivate()

On Error Resume Next

Application.CommandBars("MyCustomToolbar").Enabled = False On Error GoTo

End Sub

Bạn thay "MyCustomToolbar" tên mà bạn đặt cho công cụ tự tạo bạn Sau bạn nhấn Alt+Q để trở Excel

(56)

thấy"MyCustomToolbar", chọn Book2 (chuyển đổi qua lại bảng tính Ctrl+Tab), "MyCustomToolbar" biến mất! Chọn lại bảng tính ban đầu, "MyCustomToolbar" xuất lại Vậy thành cơng rồi!

Được voi địi tiên Bây giờ, giả sử bạn muốn rằng, bảng tính, có Sheet1 thấy "MyCustomToolbar", cịn Sheet khác khơng?

Được thơi Bạn viết thêm "Level" cho đoạn code Hãy bảo đảm bạn chọn bảng tính có chứa code (tốt bạn đóng Book2 đi) Quay trở lại cửa sổ VBA, bạn nhấn phải chuột vào Sheet mà bạn muốn thấy "MyCustomToolbar", chọn View Code (hoặc nhấn đúp vào tên Sheet được) Ở tơi giả sử bạn chọn Sheet1

Nhập vào hai đoạn code sau đây: PHP Code:

Option Explicit

- Private Sub Worksheet_Deactivate()

On Error Resume Next

Application.CommandBars("MyCustomToolbar").Enabled = False On Error GoTo

End Sub

- Private Sub Worksheet_Activate()

On Error Resume Next

With Application.CommandBars("MyCustomToolbar") Enabled = True

.Visible = True End With

On Error GoTo End Sub

Rồi nhấn Alt+Q để quay lại Excel Bây giờ, bạn dùng chuột nhấn Ctrl+PgUp/Ctrl+PgDn để chọn qua lại Sheet xem thử xuất hình

Xin đính kèm theo bảng tính có sẵn đoạn code nói trên, "MyCustomToolbar" làm ví dụ

Cũng xin nhắc lại, chiêu có tác dụng với phiên trước Excel2007

(57)

Trong Excel, cơng thức chứa tham chiếu tương đối tuyệt đối Khi cơng thức có tham chiếu tương đối chép, tính chất, tham chiếu chạy theo đến chỗ Chỉ có cơng thức có tham chiếu tuyệt đối giữ nguyên chép

Xin nhắc lại tí:

Khi bạn muốn cơng thức, copy đâu, tham chiếu đến vùng cố định đó, bạn phải dùng tham chiếu tuyệt đối cách thêm dấu $ vào tham chiếu thí dụ $A$1 Bạn thêm dấu $ vào tiêu chí dịng tiêu chí cột để cố định chiều copy công thức

Nhưng bạn muốn chép công thức tham chiếu tương đối, giữ nguyên tham chiếu, lại không muốn chuyển thành tuyệt đối? Có nhiếu cách để làm

1 Tơ đen cơng thức công thức (formula bar) copy, không copy ơ, đích paste vào công thức Cách dùng bạn chép ô

2 Khi bạn muốn chép khối ơ, Find and replace: - trước tiên, tô chọn khối muốn copy

- Nhấn Ctrl + H phím tắt Home – Find & Select – Replace (2007) Edit – Replace (2003)

- ô find what: gõ dấu =

- ô replace with: gõ dấu “và” (&), dấu nháy đơn (‘), ký tự không dùng công thức

- Nhấn Replace All

- Để nguyên vậy, nhấn ctrl + C

- Qua vị trí cần chuyển đến, nhấn Ctrl + V

- Để nguyên vậy, chuyển ngược lại dấu & dấu nháy thành dấu = với công cụ find and replace

- Trở vùng nguồn hồi nãy, chuyển ngược dấu & thành dấu = Nghe nhiêu khê, nhanh sửa tham chiếu tương đối thành tuyệt đối khối ô, chuyển ngược lại

Ghi chú: Nếu vài dùng cách nhanh (Nói nhỏ: cách Ptm0412, bạn thích xin nhấn thank phát)

Chiêu thứ 14: Gỡ bỏ liên kết ma

Bạn mở bảng tính, nhận thơng báo: "Update links",

(58)

Những liên kết (external links) liên kết tham chiếu đến bảng tính khác, chúng nằm cơng thức, Name, đối tượng chèn vào (các đồ thị, hình ) Khi liên kết bị "gãy", phần lớn lý việc di chuyển chép Sheet đến bảng tính khác Và đó, chúng trở thành "liên kết ma", nghĩa thấy đường link, chúng dẫn đến từ đâu Sau vài cách giúp bạn xử lý liên kết ma

Đầu tiên, bạn cần xem lại liệu cơng thức bảng tính bạn có chứa liên kết ngồi (mà khơng phải liên kết ma) không Nếu bạn không cơng thức bảng tính bạn có liên kết ngồi, bạn sử dụng cơng cụ tìm kiếm Khi tìm rồi, bạn việc đơn giản sửa lại cho xác, xóa hẳn chúng khơng cần thiết Bạn vào trang web này:

http://www.microsoft.com/downloads/s displaylang=vi, để tải công cụ Delete Links Wizard, công cụ thiết kế để tìm xóa tất liên kết liên kết đến Name, liên kết đến Name ẩn, đến đồ thị, query, đối tượng Tuy nhiên, công cụ khơng tìm liên kết ma

Cho dù bạn tin rằng, khơng có cơng thức có chứa liên kết, bạn cần phải chắn khơng có liên kết ma núp Để làm việc này, tơi thường mở hộp thoại Name Manager, dị Name một, để chắn khơng có Name chứa tham chiếu đến bảng tính khác

Với Excel 2003, thay nhấn vào tên để xem tham chiếu trong khung Refers to, bạn sử dụng cách này, nhanh hơn: Chọn menu

Insert | Name | Paste, hộp thoại Paste Name, nhấn vào nút

Paste Link Excel tạo danh sách Name có bảng tính, cùng những tham chiếu nó, bảng tính, để bạn kiểm tra

Excel 2007 dễ hơn, bạn xem lần tất Name hộp thoại Define Name Nhưng bạn muốn dán chúng ngồi bảng tính, bạn chọn Formulas | Use in formula | Paste Name, nhấn vào

Paste List hộp thoại vừa xuất hiện.

Tuy nhiên, với tất phiên Excel, cách nhanh để gọi hộp thoại

Paste Name, nhấn F3.

Nếu có Name tham chiếu đến vùng ngồi bảng tính, bạn thấy chúng có chứa đường link giống hiển thị hộp thoại cảnh báo Update Link bạn mở bảng tính Và bạn tự định sửa lại đường link cho đúng, xóa Name

(59)

Các liên kết ngồi cịn núp đối tượng (object) Text box, hình vẽ, v.v Các đối tượng liên kết đến bảng tính khác Cách dễ để chọn nhanh đối tượng, bạn đứng bảng tính, chọn Home | Find & Select | Go to Special [E2003: Edit | Go to | Special], nhấn F5, kích hoạt tùy chọn Object nhấn OK Các thao tác chọn tất đối tượng (object) có bảng tính Bạn nên làm việc sau file: Với tất đối tượng chọn, bạn xóa, lưu bảng tính, đóng bảng tính, mở lại xem thử có cịn vấn đề khơng

Cuối cùng, nơi mà bạn phải tìm sheet ẩn mà bạn tạo ra, dấu quên Bạn làm cho chúng lên (2007: View➝Unhide, 2003: Format ➝Sheet ➝Unhide) Nếu mục Unhide bị mờ đi, nghĩa khơng có sheet ẩn Nếu bạn nghi ngờ co sheet siêu ẩn, đọc lại chiêu số để tìm buộc chúng

Thế bạn xử xong link có thực mà bị gãy Bây đến link ma Mở fle bị lỗi lên, Chọn Data – Edit links (2007) Edit Links (2003) Đôi bạn cần nhấn chọn vào link ma, nhấn Change Source, gán trở lại link Nhưng thường bạn bị thơng báo lỗi cơng thức bị lỗi, khơng thực

Nếu bạn làm cách dễ không xong áp dụng cách này:

Mở file lên, file lỗi file link đến Từ ô file lỗi, đánh dấu (=), qua file chọn ô bất kỳ, Enter Bạn tạo link thiệt, link ngon Lưu bảng tính lại, đừng đóng Vào bảng tính lỗi, lại chọn Data – Edit links (2007) Edit Links (2003), Change source, sửa tham chiếu link ma vào bảng tính Lưu lại lần xố chứa link bạn tạo

Cách thường có hiệu trừ ma, Excel nhận bạn xoá link đến bảng tính cịn lại Nhưng chưa trừ tận gốc bị lỗi, bạn làm bước tiếp theo, nhưng nhớ làm file lỗi

Cách xoá vĩnh viễn liệu bạn, nên tốt tạo dự phòng trước Mở file lỗi lên, delete sheet, lưu, đóng, mở lên lại Nếu khơng cịn thơng báo update link ma, 100% link ma nằm sheet Nếu khơng, delete tiếp sheet để kiểm tra Trước xoá sheet cuối cùng, phải insert sheet trắng Nhớ ghi lại sheet chứa link ma

(60)

Hy vọng bạn thực thành công chiêu này, để không bực ma quấy nhiễu

Chiêu thứ 15: Giảm kích thước file Excel bị phình to bất thường

Bạn có có file Excel bị tăng kích thước đến mức báo động chả biết nguyên nhân? Có nhiều lý làm cho bảng tính bị phình lên kích thước file có cách để loại trừ Những bí sau giúp bạn bạn có file Excel có kích thước lớn bất thường Có bạn bị bội thực cố ăn mà chưa tiêu hố kịp chưa? File Excel Nó bị phình bạn cố nhồi nhét đủ thứ vào bắt phải thực hiện, phải nuốt trọng khơng kịp nhai, hậu khơng làm việc ý muốn

Tôi thử với file Excel chuẩn với nhiều liệu Với liệu thơ, có kích thước 1,37 Mb Rồi tơi cho vào Pivot Table, sử dụng liệu nguồn cột vùng liệu Kích thước file tăng lên 2,4 Mb Tôi thử thiết lập vài định dạng, kích thước file bị nhân đơi Một nguyênnhân chủ yếu làm tăng kích thước file file Excel trước 2007, chưa có khái niệm table, bạn định dạng màu, cỡ font, màu chữ, đóng khung, cho cột cho dịng, khơng nói bảng tính; khơng định dạng cho khu vực chứa liệu Tôi thấy người mở bảng tính lên, Ctrl A, tơ trắng tồn bộ, đóng khung tồn Khơng họ xác định vùng liệu nguồn cho biểu đồ, cho Pivot table, nguyên cột Có thấy cuộn dọc ngang Excel trở nên nhỏ tí tị, kéo hồi khơng thấy hết mà liệu trống trơn

Để giải bạn phải sửa, bỏ hết định dạng thừa dịng cột trống, bỏ thói quen xố màu fill color cách chọn fill trắng Hãy chọn No Fill! Sau điều chỉnh liệu nguồn biểu đồ, Pivot Table vừa với vùng có liệu

Hãy làm sau: trước hết back up bảng tính lại Gỡ bỏ định dạng dòng cột thừa:

Bước xác định tay mắt ô cuối bên phải dưới, có chứa liệu Đừng có mà dùng phím ctrl+ mũi tên xuống ctrl + mũi tên qua phải, dùng Find - Select - Go To Special – Last Cells, cách tới cuối có định dạng, khơng phải cuối có liệu Khi xác định mắt cuối chứa liệu click chọn ngun dịng kề Lúc ới nhấn Ctrl + Shift + mũi tên xuống để chọn toàn dịng bên vùng có liệu Sau dùng lệnh Clear – All để xoá vùng

Tương tự, xác định cuối có chứa liệu xong, nhấn chọn nguyên cột liền kề bên phải, nhấn tiếp Ctrl + Shift + mũi tên qua phải để chọn tồn cột bên phải Sau lại dùng lệnh Clear – All để xố vùng

Khơng nên dùng lệnh xố dịng cột, có cơng thức tham chiếu đến chúng Lưu bảng tính lại thử xem kích thước file Property:

2007: Office button Prepare Properties Document Properties Advanced Properties➝ ➝ ➝ ➝

2003: File Properties… General➝ ➝

2 Xố Macro: Khơng phảo xố hẳn Macro, mà gỡ chúng ngồi file Excel:

Có cách nhanh, khơng gây hại Export tất modules UserForms vào đĩa cứng Nhấn Alt F11 vào cửa sổ VBA nhấn chuột phải vào module, chọn remove module (tên môdule) Trong thông báo nhấn Yes, chọn thư mục để lưu lại làm tiếp cho Form đừng quên macro lưu trữ sheet workbook

Sau xố xong, lưu bảng tính lại Sau đó, cửa sổ VBA, vào menu File – Import File import hết modue form hồi Làm vậy, ta sử dụng form Macro, tạo1 file text, ngăn chặn thứ linh tinh mà Macro mang theo

(61)

đó làm rối tung code chí làm tăng kích thước file Tốt trước ứng dụng tiện ích nào, backup file bạn trước

3 Điều chỉnh vùng liệu nguồn:

Nếu sau làm bước mà kích thước file bạn khơng giảm bao nhiêu, kiểm tra liệu nguồn Pivot Table Pivot Chart Một vài người thường sử dụng nguyên cột liệu để làm nguồn cho Pivot table, để phịng xa sau có thêm liệu cập nhật vào dù vài dòng Nếu thiết phải phòng xa vậy, tốt bạn dùng name động Xem thêm tuyệt chiêu số 47

4 Làm sheet:

Trong sheet bạn tồn định dạng thừa, style, autoshape thấy khơng thấy (có lên đến hàng trăm hàng ngàn)

a Xoá object autoshape thừa Để tìm autoshape object ẩn bạn phải vào option Excel sửa lại hình sau:

2007:

(62)

Bạn nhấn Ctrl + G, Special – Object để chọn lúc nhiều object

b Làm khơng nhìn thấy sheet:

Trước tiên, bạn backup bảng tính Unhide tồn sheet ẩn sheet siêu ẩn (xem thêm chiêu số 5) Bây bạnthử xoá sheet (xoá hẳn), lưu lại, vào Property xem lại kích thước Nếu sau xố sheet nào, mà kích thước file giảm đáng kể, sheet chứa nhiều rác (khơng kể liệu) Vậy, xác định sheet chứa rác bạn phải làm gì?

Bạn mở file backup hồi lên, tạo sheet toanh, chọn vùng liệu sheet chứa rác, dùng lệnh Cut (Ctrl + X), đừng copy, Paste vào sheet Bằng cách cắt (Cut), Excel giữ nguyên tham chiếu cho bạn

(63)

Hy vọng sau này, bạn biết cách xử lý file có kích thước lớn lạ thường

Chiêu thứ 16: Cứu liệu từ bảng tính bị lỗi

Khi bảng tính bị lỗi (corrupt), bị hư, nghĩa bạn bị hết liệu, mà nhiều mát đau tiền Chiêu giúp bạn vài cách để phục hồi lại phần liệu bảng tính bị lỗi.

Một bảng tính đơi gặp phải lỗi mà bạn chẳng hiểu lý Điều đem lại cho bạn vấn đề trầm trọng, bạn bị hư bảng tính quan trọng mà bạn chưa lưu dự phịng Do đó, học là: Ln ln lưu bảng tính bạn vào nơi khác Nhưng thực tế khơng phải nhớ điều này, và, bảng tính bạn bị hư trước bạn nghĩ đến việc lưu!

Tuy nhiên, bạn đừng thất vọng q, cho dù bảng tính bạn bị lỗi, đơi bạn mở làm

Khi bạn cịn mở bảng tính

Khi bạn cịn mở bảng tính bị lỗi, trước làm điều gì, bạn lưu khác, khơng, bạn ln Vì cịn giữ lưu, bạn cầu cứu giúp đỡ chuyên nghiệp hơn, bạn khơng thể làm

1 Bạn mở bảng tính bị lỗi ra, với phiên Excel cao có thể, lại nhấn lưu thêm lần nữa, nhiên điều không cần thiết bạn dùng Excel 2007

(64)

Khi lưu dạng HTML HTM, bảng tính bạn bị thứ sau đây:

Với bảng tính tạo từ Excel 2007: - Những tính Excel 2007

- Các PivotTable biểu đồ (chúng lưu lại, hết bạn mở lưu lại với dạng bình thường Excel)

- Các VBA Project

Với bảng tính tạo từ phiên trước Excel 2007 (Excel 2003, Excel XP, ):

- Những định dạng số chưa dùng đến - Những style chưa dùng đến

- Các thiết lập Data Consolidation - Các Seriano

- Các công thức sử dụng ngôn ngữ tự nhiên, chúng chuyển đổi thành tham chiếu dãy bình thường

- Các hàm tự tạo

- Các định dạng gạch ngang chữ (strikethrough), số (superscript), số (subscript)

- Các thay đổi hồi phục (bằng lệnh Undo)

- Các thiết lập định dạng trang cho biểu đồ nhúng bảng tính

(65)

Ngồi ra, bảng tính chia sẻ (shared workbook) phiên trước Excel 2007 khơng cịn chia sẻ Với biểu đồ, thiết lập cho "Value (Y) axis crosses at category number" tab Scale hộp thoại Format Axis không lưu, tùy chọn "Value (Y) axis crosses a maximum category" chọn; thiết lập "Vary colors by point" hộp thoại Format Data Series không lưu biểu đồ chứa nhiều Data Serie

3 Cuối cùng, bảng tính khơng hoạt động, cố gắng mở lại bảng tính lần nữa, lần lưu với dạng SYLK (loại tập tin có *.slk - Symbolic Link) Nhưng nhớ rằng, bạn lưu dạng này, có Sheet hành (active sheet) lưu, đó, bảng tính có nhiều Sheet, bạn làm thêm vài lần, với lần Sheet, nhớ đặt tên cho cho dễ nhận biết Rồi lại mở bảng tính *.slk ra, lưu lại với dạng bình thường (*.xls chẳng hạn)

Khi bạn khơng cịn mở bảng tính

(66)

2 Bạn mở bảng tính mới, tạo cho Extenal Link (liên kết ngồi) đến bảng tính bị hư Ví dụ:

='C:\Documents and Settings\BNTT\My Documents\[ChookSheet.xls]Sheet1'! A1

Copy liên kết vào ô khác (số lượng tùy thuộc vào trí nhớ bạn bảng tính bị hư, có hàng, cột ), làm tương tự cho Sheet khác (nếu cần thiết) Nếu bạn không nhớ tên Sheet bảng tính bị hư, bạn tạo đại Sheet với đường dẫn xác, Excel hiển thị tên Sheet bạn nhấn Enter Có thể bạn thấy

3 Nếu hai cách khơng đem lại cho bạn điều gì, bạn vào trang web Openoffice.org, download phiên miễn phí phần mềm Ngoại trừ tên menu toolbar, Openoffice.org giống Excel, tạo cấu trúc bảng tính với Excel (có đến 96% cơng thức Excel sử dụng bảng tính Openoffice.org)

Sau download phiên miễn phí Openoffice.org, bạn cài đặt vào máy Rồi dùng để mở bảng tính bị hư bạn Trong nhiều trường hợp, liệu bạn phục hồi Tuy nhiên, VBA code khơng cịn cả, VBA code Excel khơng tương thích với Openoffice.org

4 Nếu số bạn đen, dùng Openoffice.org để cứu liệu, còn cách nữa, bạn phải tiền Một chương trình phục hồi tốt bảng tính bị hư Corrupt File Recovery Bạn tải cài đặt phần mềm này, chạy chương trình ExcelFix, nhấn Select File, chọn bảng tính bị lỗi, nhấn Diagnose để phục hồi Bạn thấy thành mình, lưu lại bảng tính, bạn trả tiền quyền, chưa trả tiền quyền, bạn xem lưu lại

Chiêu thứ 17: Sử dụng Data-Validation danh sách nguồn nằm Sheet khác

Sử dụng Data-Validation cách dễ để áp dụng quy tắc nhập liệu cho dãy liệu Theo mặc định, Excel cho phép Data-Validation sử dụng danh sách nguồn nằm Sheet với dãy liệu áp dụng quy tắc Tuy nhiên, có cách để lách khỏi chuyện đó.

Chiêu giúp bạn làm cho Data-Validation sử dụng danh sách nguồn nằm Sheet khác Cách thứ lợi dụng việc đặt tên cho dãy Excel, cách thứ hai sử dụng hàm để gọi danh sách

Cách 1: Sử dụng Name cho dãy nguồn

(67)

đặt tên cho dãy, bạn xem loạt này: Sử dụng tên cho dãy

Giả sử bạn đặt tên cho dãy dùng làm quy tắc nhập liệu MyRange Bạn chọn ô (hoặc dãy) Sheet mà bạn muốn có danh sách xổ để nhập liệu, menu Data Ribbon, bạn chọn Data Tools | Data Validation [E2003: Data | Validation] Chọn List danh sách

Allow, khung Source, bạn nhập vào =MyRange Nhấn OK Bởi bạn sử dụng Name để làm List, nên bạn áp dụng Data-Validation cho Sheet

Cách 2: Sử dụng hàm INDIRECT

Hàm INDIRECT() cho phép bạn tham chiếu đến ô chứa liệu text đại diện cho địa Và bạn sử dụng mơt tham chiếu cục bộ, cho dù tham chiếu đến liệu Sheet khác Bạn sử dụng tính để tham chiếu đến nơi chứa dãy mà bạn dùng làm danh sách nguồn cho quy tắc Data-Validation

(68)

Nếu tên Sheet bạn có chứa khoảng trắng, có dấu tiếng Việt, bạn phải đặt tên Sheet cặp nháy đơn (') Ví dụ, giả sử tên Sheet chứa danh sách nguồn Sheet (chứ Sheet1), bạn sửa cơng thức lại sau: =INDIRECT("'Sheet 1'!$A$1:$A$8") Chỗ khác so với công thức hồi có thêm dấu nhấy đơn (') sau dấu nháy kép ("), dấu nháy đơn (') trước dấu chấm than (!)

Xin mở ngoặc đơn: Nếu được, gặp tham chiếu đến tên Sheet, bạn nên tập thói quen ln ln bỏ vào cặp dấu nháy đơn Điều này, chẳng có tác dụng với tên sheet Sheet1, DMHH giúp bạn không gặp lỗi, bạn hay đặt tên Sheet có khoảng trắng, có bỏ dấu tiếng Việt

Ưu điểm Khuyết điểm hai cách nêu trên

Đặt tên cho dãy, dùng hàm INDIRECT, có tiện lợi bất tiện Tiện lợi việc đặt tên cho dãy, việc bạn thay đổi tên Sheet chẳng có ảnh hưởng đến Data-Validation Và bất tiện việc dùng

INDIRECT, bạn đổi tên Sheet, tên không tự động cập nhật công thức dùng INDIRECT, muốn dùng công thức này, bạn phải mở Data-Validation sửa lại tên Sheet công thức

Tiện lợi việc dùng INDIRECT, dãy dùng làm danh sách nguồn bạn luôn nằm yên chỗ chọn (A1:A8 ví dụ chẳng hạn) Cịn bạn dùng Name, mà bạn lỡ tay xóa vài hàng (hoặc cột) chỗ chứa Name, bạn phải điều chỉnh lại cho

Chiêu số 18: Điều khiển Conditional Formating bằng checkbox.

(69)

hoá cách điều khiển checkbox giống công tắc (hoặc toggle Button giống hơn)

Conditional Formating có từ đời Excel 97, gán định dạng cho ô thoả số điều kiện Điều kiện điều kiện giá trị, ta tuỳ biến nhiều dùng điều kiện công thức, dựa vào ta thay đổi định dạng cho này, có thay đổi giá trị ô khác

1 Dùng Checkbox Toggle Button để xem ẩn liệu:

Bạn muốn vùng liệu lúc cần xem, xem xong biến cho rảnh Trước tiên bạn phải gán lên sheet Checkbox Toggle Button Trong Excel 2007, vào tab Developer, nhấn Insert Controls - chọn Checkbox Toggle Button Control Toolbox, Excel 2003 chọn view – Toolbar – Control Toolbox, vẽ lên sheet Trong hình, tơi làm thử

(70)

Property Trong cửa sổ Property, sửa dòng Caption thành View/ Hide, sửa dòng Linked Cell thành $C$2 (cả 2007 2003 nhau, checkbox Toggle Button nhau)

Bây bạn click chọn checkbox nhấn nút Toggle, ô C2 có giá trị TRUE FALSE

(71)(72)

Nếu bạn khơng thích định dạng C2 chữ trắng luôn, để khỏi thấy chữ TRUE, FALSE lên

2 Tắt mở định dạng màu cho ô:

Dùng Conditional Formating nhằm tô màu ô theo điều kiện giúp ta dễ tìm có giá trị đặc biệt cho trước Excel 2007 có nhiều định dạng khác cho giá trị số nằm khoảng cho trước Nhưng biện pháp để mở tắt checkbox khơng có sẵn

(73)

Trong vùng liệu B5:B16, ta muốn giá trị nằm khoảng BeginNum EndNum tô màu Vậy dùng conditional Formating trên, chọn vùng C8:C18, lần công thức là:

=AND($C8>=BeginNum,$C8<=EndNum,IsFill) Chọn cho định dạng màu theo ý muốn

Kết quả: nhấn button click checkbox thay đổi trạng thái thành True, ô chứa số khoảng (100, 1.000) tô màu, cịn lại khơng tơ Khi thay đổi thành False, trở lại bình thường

(74)

Bạn thấy đấy, bạn chưa xem mà thấy file tương tự người khác, bạn lầm tưởng người ta sử dụng code VBA Sự thực đơn giản phải không?

Chiêu số 19: Đánh dấu ô chứa công thức bằng Conditional Formatting

(75)

click chọn xem cơng thức Bạn dùng phím tắt Ctrl + ~ để chuyển qua lại chế độ xem giá trị xem công thức

Chiêu số 19 giới thiệu với bạn hàm tự tạo, kết hợp với Conditional Formatting để đánh dấu ô chứa công thức Bằng cách giúp bạn tìm tất ô chứa công thức số 10.000 ô mà ngó ô

Mặc dù bạn dùng hàm có sẵn Macro4 Conditional Formatting, sau:

Trong hộp thoại Conditional Formatting, chọn công thức, gõ công thức này: = CELL(“type”,A1) Nhưng hạn chế việc dùng hàm Cell() cơng thức tự tính lại có thay đổi nhỏ xíu bảng tính Vì Cell() hàm thuộc loại volatile Khi Excel tính lại Cell() cho 10.000 ô khiến cho bạn bực chờ đợi

Do bạn dùng tuyệt chiêu sau đây, đơn giản, dễ làm hàm loại volatile:

Bạn nhấn Alt – F11 để vào cửa sổ VBA, nhấn chuột phải vào This

Workbook để insert vào module Nhập đoạn code sau vào khung soạn thảo: PHP Code:

Function IsFormula (CheckCells As Range) IsFormula = CheckCells.HasFormula

End Function

Do tính chất Property HasFormula, hàm bạn tạo trả giá trị luận lý True, False Nghĩa bạn gõ vào ô công thức =

IsFormula(A1) cho kết True A1 chứa công thức cho kết False A1 chứa giá trị

Đóng cửa sổ VBA lại, trở bảng tính Bây đánh dấu tồn vùng liệu bạn (có thể chọn dư số cột dòng, phòng bạn cập nhật thêm liệu) cho ô A1 ô hành

Bằng cách chiêu số 18, bạn vào chỗ cần thiết để gõ công thức hộp thoại Conditional Formatting, gõ vào:

=IsFormula(A1), sau định dạng tơ màu đổi màu chữ cho khác cịn lại

Sau nhấn OK bạn kết tất ô chứa công thức tô màu Nếu bạn thêm thay đổi ơ, trở thành cơng thức đổi màu

(76)

Bây bạn sửa thêm trở thành cơng thức, có màu ngược lại, bạn sửa cơng thức thành giá trị thêm giá trị vào ô, ô màu

Cái CF UDF đơn giản mà thực hữu ích, bạn nhỉ!

Chiêu thứ 20: Đếm cộng ô định dạng có điều kiện

Chúng ta thường hỏi: "Làm để tính tốn với ô tô màu cụ thể đó?" Câu hỏi thường nêu ra, Excel khơng có hàm bình thường để thưc nhiệm vụ này; nhiên, thực hàm tự tạo

Vấn đề xảy với việc sử dụng hàm tự tạo, khơng thể lọc loại định dạng áp dụng việc định dạng có điều kiện (conditional formatting) Tuy nhiên, suy nghĩ tí, bạn có kết tương tự mà cần đến hàm tự tạo

Giả sử bạn có danh sách dài số dãy $A$2:$A$100 Và bạn áp dụng định dạng có điều kiện cho dãy đó: đánh dấu có giá trị nằm khoảng từ 10 đến 20 Bây giờ, bạn muốn lấy giá trị ô thỏa mãn điều kiện mà bạn thiết lập, tính tổng áp dụng định dạng Khơng có khó! Bạn đừng để kiểu định dạng áp dụng chi phối bạn, nói cách khác, bạn khơng cần quan tâm những định dạng kiểu gì Bạn cần quan tâm đến điều kiện để áp dụng định dạng cho chúng (trong trường hợp này, có giá trị khoảng từ 10 đến 20)

Bạn dùng hàm SUMIF() để tính tổng thỏa mãn điều kiện đó, điều kiện mà thơi! Nếu muốn có nhiều điều kiện, bạn phải dùng hàm SUMIFS() Excel 2007, dùng cơng thức mảng Ở tơi nói đến cơng thức mảng, sử dụng hầu hết phiên Excel

Với trường hợp ví dụ này, bạn sử dụng công thức mảng giống sau:

=SUM(IF($A$2:$A$100>10, IF($A$2:$A$100<20, $A$2:$A$100)))

Khi nhập công thức mảng, bạn đừng nhấn Enter, nhấn

Ctrl+Shift+Enter Khi đó, Excel tự động thêm cặp dấu ngoặc hai đầu công thức, giống vầy:

{=SUM(IF($A$2:$A$100>10, IF($A$2:$A$100<20, $A$2:$A$100)))}

Nếu bạn tự gõ cặp dấu ngoặc đó, công thức không chạy Bạn phải để Excel làm việc cho bạn.

Và bạn nên biết điều này: sử dụng cơng thức mảng làm cho Excel tính tốn chậm hơn, có nhiều tham chiếu đến dãy lớn.

(77)

công thức mảng, bạn ghé thăm trang web này:

http://www.ozgrid.com/Excel/arrays.htm

Một cách khác

Ngồi việc sử dụng cơng thức mảng, bạn dùng cột phụ để tham chiếu đến ô bên cột A Những tham chiếu trả giá trị cột A mà thỏa mãn điều kiện bạn đặt (ví dụ: > 10, < 20) Để làm điều này, bạn theo bước sau:

Chọn B2 nhập vào cơng thức: =IF(AND(A2>10, A2<20), A2, "")

Kéo công thức xuống ô B100 Khi công thức điền vào, bạn có giá trị nằm khoảng 10 đến 20 (xuất cột B) Thêm chiêu phụ: Để nhanh chóng "kéo" cơng thức vào cột xuống đến ô hàng với ô cuối sử dụng cột bên cạnh (trong trường hợp này, "kéo" từ ô B2 đến ô B100, ô tương ứng với ô cuối sử dụng cột A, ô A100),sau nhập công thức trong ô đầu tiên (ô B2), hãy chọn ô đó, rồi nhấp đúp chuột (double click)

vào Fill handle (là núm chút xíu nằm góc bên phải ô chọn, mà bạn thường dùng để "kéo" công thức)

Bây giờ, bạn chọn mà bạn muốn xuất tổng giá trị thỏa mãn điều kiện đề ra, sử dụng hàm SUM bình thường (=SUM(B2:B100) chẳng hạn) Bạn ẩn (Hide) cột B bạn muốn

Một cách khác nữa

Cách dùng cột phụ vừa nói, chắn chạy tốt Nhưng, Excel cịn có hàm cho phép bạn sử dụng hai nhiều điều kiện cho dãy Đó làm hàm DSUM()

Để thử nó, bạn dùng lại ví dụ trên: tính tổng giá trị dãy $A$2:$A$100 thỏa mãn điều kiện lớn 10 nhỏ 20 Bạn chọn ô C1 2, đặt tên cho SumCriteria Rồi chọn C1, nhập vào cơng thức: =$A$1, tham chiếu đến Sheet Copy cơng thức sang D1, bạn có hai cho tiêu đề cột A, ô (C1, D1) dùng ô tiêu đề vùng điều kiện hàm DSUM, vùng mà bạn đặt tên SumCriteria (C1 2)

Trong ô C2, nhập vào biểu thức >10 Trong ô D2, nhập vào biểu thức <20 Rồi mà bạn muốn có kết tổng giá trị thỏa mãn điều kiện vừa nêu, nhập vào công thức sau:

=DSUM($A$1:$A$100, $A$1, SumCriteria)

(78)

Thêm cách khác nữa

Cách này, học Giải pháp Excel: Dùng hàm SUMPRODUCT() Cũng với tốn tính tổng giá trị dãy $A$2:$A$100 thỏa mãn điều kiện lớn 10 nhỏ 20 Bạn chọn ô mà bạn muốn có kết tổng giá trị thỏa mãn điều kiện vừa nêu, nhập vào công thức sau:

=SUMPRODUCT(($A$2:$A$100>10) * ($A$2:$A$100<20) * $A$2:$A$100) Hoặc:

=SUMPRODUCT( ($A$2:$A$100>10), ($A$2:$A$100<20), $A$2:$A$100) Diễn cách bình dân, hàm SUMPRODUCT copy khối $A$2:$A$100 thành mảng (trong nhớ máy tính): Mảng thứ nhất, giá trị ô mà > 10, ô có giá trị (TRUE), cịn khơng bẳng (FALSE); Mảng thứ hai, tương tự vậy, áp dụng cho có giá trị <20; Mảng thứ có giá trị ô giá trị tương ứng

$A$2:$A$100

Tiếp theo, SUMPRODUCT nhân nhóm giá trị tương ứng mảng với Bạn thấy, giá trị mảng mảng 1, giá trị nhân giá trị tương ứng $A$2:$A$100; có giá trị mảng mảng mà 0, kết phép nhân bẳng Nói cách khác, giá trị $A$2:$A$100 thỏa mãn điều kiện >10 <20 lấy

Cuối cùng, SUMPRODUCT cộng hết kết phép nhân (SUM phép tính tổng, PRODUCT phép tính nhân, SUMPRODUCT tổng tích), kết mà ta muốn có

Chiêu thứ 21: Tơ màu dịng xen kẽ

Ắt hẳn bạn thấy bảng tính Excel với dịng tơ màu cách nhau, thí dụ dịng chẵn tơ màu xám, dịng lẻ khơng tơ tơ màu khác

Trình bày bảng tính tơ màu cách dịng khiến cho bảng tính Pro làm cho người dùng dễ đọc liệu Bạn định dạng từ từ tay dòng, bạn đủ kiên nhẫn, bạn biết đấy, kiên nhẫn lần chưa đủ Bạn phải bực cần xố dịng, chèn dịng, cập nhật liệu May sao, sử dụng Conditional Formatting giúp bạn thực tô màu nhanh loại bỏ hết phiền tối sau tơ màu

Giả sử bạn có liệu vùng A1:H57, bạn dự trù cập nhật hết tháng khoảng 100 dòng Vậy bạn đánh dấu chọn khối A1:H100 cho ô A1 ô hành Dùng cách chiêu 18, 19, để vào chỗ cần gõ công thức chức Conditional Formatting, gõ công thức sau:

= Mod(Row(),2)

(79)

Cũng bạn muốn tơ màu cột cách cột, dùng cơng thức =Mod(Column(),2)

Ghi chú: Nếu bạn có sử dụng ASAP Utilities, bạn làm sau:

(80)

Chọn Row column tuỳ ý, chọn màu tuỳ ý, gõ ô Steps, đánh dấu vào mục chọn Conditional Formatting

Kết công thức Condition =MOD(ROW()-1,2*1)+1<=1

Công thức phức tạp rút gọn là: = Mod(Row()-1,2)=0 hiệu tương tự cơng thức Sở dĩ phức tạp, để thay đổi phương pháp tô màu theo steps chọn Thí dụ chọn step = 3, cách dịng tơ dịng, nghĩa hình sau: Chỉ tơ dịng có Mod(Row()-1,3)=0

Mặc dù phương pháp dễ thực hiện, không linh hoạt: Tất dịng lẻ từ đến 100 bị tơ màu, dù có liệu hay khơng (nhớ lại, liệu bạn đến dịng 57) Vậy tơ tự dộng đến hết dịng cuối có liệu, cị chưa có liệu bị tô màu sau nhập liệu không? Hãy xem cách sau đây:

Tô màu động:

Chỉ cần bạn sửa cơng thức lại xíu xiu: =And( Mod(Row(),2),CountA($A1:$H1))

Chú ý chỗ tham chiếu tuyệt đối cột tương đối dịng Ý nghĩa cơng thức là:

- bạn đứng dịng 1, dịng lẻ vùng A1:H1 có liệu => tơ màu - Nếu bạn đứng dịng 10, cơng thức trở thành

(81)

- Nếu bạn đứng dịng 59: dịng lẻ khơng có liệu => không tô màu

Mở rộng: Tô màu cách dịng tơ 1, tơ xen kẽ màu trở lên:

bạn cần sửa công thức ASAP cho phù hợp, kết hợp với CountA() cho linh hoạt Thí dụ với cơng thức hình:

bạn có kết hình, dịng khơng có liệu khơng tơ màu

(82)

Bất bạn nhìn thấy hiệu ứng 3D chương trình ứng dụng, chẳng hạn Excel, hẳn bạn thấy đánh lừa qua thị giác tạo cách định dạng đặc biệt Chính bạn tạo hiệu ứng cách dễ dàng cách định dạng ô dãy ô Phiên Excel 2007 đưa vào styles ô, bạn tạo hiệu ứng 3D lưu lại để sử dụng vào bạn muốn

Hãy bắt đầu với ví dụ đơn giản, tạo hiệu ứng 3D cho để nhìn lên giống nút lệnh(button)

Trong bảng tính trống, bạn chọn D5 (Bạn chọn D5 khơng nằm rìa bảng tính) Dưới Cell Options tab Home, chọn Format Format Cells➝

Border (với phiên trước Excel 2007: Format Cells Border) Hoặc

➝ ➝ ➝

bạn click chuột phải, chọn Format cells Border Trong➝ hộp line, chọn đường dày thứ (bên phải, thứ từ đếm lên) Chắc chắn màu chọn màu đen (hoặc chọn automatic bạn chưa thay đổi mặc định lựa chọn này) Bây click chọn đường viền bên phải đường viền bên bảng

(83)

Chọn tab Fill (với phiên trước Excel 2007: chọn tab Patterns) hộp thoại Format Cells chọn màu xám Click chọn OK không chọn ô D5 (di chuyển trỏ chuột sang khác) Ơ D5 xuất lên giống button Bạn làm tất điều với đường viền bóng đổ

Nếu muốn vui đa dạng hơn, bạn tạo nhìn giống bị lõm thụt vào chọn E5 (vì kế D5 sử dụng cho tập tiếp theo) Chọn Home Cells Format Format Cells Bord (với phiên ➝ ➝ ➝ ➝

trước Excel 2007: Format Cells Border) chọn đường viền dày thứ 2➝ ➝

(84)

Nếu bạn cảm thấy thích thú với style ô mà bạn tạo Bạn lưu lại cách chọn Home Styles Cell Style NewCell Style, bạn gõ tên mà bạn ➝ ➝ ➝

muốn đặt cho style vào click OK Chú ý Styles ô lưu lại workbook bạn kết hợp Styles từ workbooks khác Lựa chọn khơng có phiên trước Excel 2007 Nếu bạn muốn lưu style ô phiên trước bạn vào

Format Style.➝

Sử dụng hiệu ứng 3D cho bảng liệu

Kế tiếp, làm thí nghiệm với công cụ để thấy loại hiệu ứng 3D mà bạn tạo cho bảng sheets Chọn D5 E5, click chọn công cụ Format Painter (biểu tượng chổi quét ) Clipboard options tab Home (với phiên trước Excel 2007: xem standard toolbar) Trong nhấn chuột trái, Click chọn ô F5 rê chuột qua J5, sau nhả

(85)

Hiệu ứng 3D dãy ô

Nếu bạn muốn lưu style bảng này, bạn chọn Home Styles Format as ➝ ➝

Table NewTable Style Với phiên trước Excel 2007 bạn khơng thể ➝

lưu style bảng

Chúng ta sử dụng đường viền dày để hiệu ứng thấy cách rõ ràng, nhiên, bạn tạo tinh tế cách sử dụng đưởng mảnh

Bạn sử dụng đường khác để tạo hiệu ứng hay Cách dễ để tìm kết hợp có hiệu bạn nên thử kiểm tra sai sót bảng tính trống để tạo hiệu ứng mà bạn muốn Bạn bị giới hạn tưởng tượng có lẽ khiếu thẩm mỹ

(86)

Thí dụ dùng đường kẻ khơng liền nét cho đường kẻ ngang

Hãy luôn nhớ hiệu ứng 3D làm cho bảng tính dễ đọc, nhìn chun nghiệp dễ cảm nhận hơn, chúng sử dụng mức chúng có ảnh hưởng trái ngược Nên nhớ, sử dụng thứ có mức độ

Nếu bạn muốn tạo xa cung cấp hiệu ứng 3D cách tự động sinh động, bạn kết hợp 3D với định dạng có điều kiện để tự động cung cấp nhiều style mà bạn thích

Bổ sung:

Bạn dùng hiệu ứng 3D cho (đã thực trên) để dùng button thực thụ, bạn kết hợp với VBA Giả sử bạn muốn bảng tính bạn có button (nổi, đương nhiên), nhấn vào chìm xuống thực thi macro Khi nhấn lần nút lên thực

macro khác dừng thực macro thứ

Dùng cơng cụ ghi macro để ghi lại q trình lập hiệu ứng 3D cho ô D5, ta đọan code Module, sửa lại chút đỉnh với biến Public IsRun để tuỳ trường hợp gán Border thích hợp:

PHP Code:

Sub Change1()

With Selection.Borders(xlEdgeLeft) LineStyle = xlContinuous

.Weight = xlMedium

.ColorIndex = IIf(IsRun, 2, 0) End With

(87)

.Weight = xlMedium

.ColorIndex = IIf(IsRun, 2, 0) End With

With Selection.Borders(xlEdgeBottom) LineStyle = xlContinuous

.Weight = xlMedium

.ColorIndex = IIf(IsRun, 0, 2) End With

With Selection.Borders(xlEdgeRight) LineStyle = xlContinuous

.Weight = xlMedium

.ColorIndex = IIf(IsRun, 0, 2) End With

End Sub

Bây dựa vào kiện SelectionChange sheet, ta làm cho ô D5 thay đổi border sau:

PHP Code:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$D$5" Then

If Target = "Run" Then Target = "Stop"

IsRun = False Else

Target = "Run" IsRun = True End If

Change1

Cells(1, 1).Select End If

End Sub

Các bạn xem file đính kèm Thí dụ minh hoạ, khơng có đoạn code thực thi, ô D5 trở thành nút nhấn thực

Chiêu số 23: Bật, tắt chức Conditional Formatting 1 checkbox

Bạn thường dùng Data Validation để giới hạn liệu nhập vào, dùng Conditional Formatting để cảnh báo nhập liệu trùng Nhưng bạn muốn tắt chúc cảnh báo CF Có cách đơn giản để bật tắt chức cách sử dụng checkbox Xem thêm Chiêu số 18: Điều khiển

Conditional Formating checkbox

Nhưng CF tô màu liệu nhập trùng

(88)

liệu xuất nhiều lần vùng liệu Giả sử vùng A1:A100 bạn thiết lập CF với công thức sau:

=CountIf($A$1:$A$100,$A1)>1

Bây bạn muốn tuỳ ý bật tắt CF Trước tiên bạn công cu Form Control Toolbox, vẽ Checkbox lên sheet Thiết lập Property Cell Link cho checkbox đó, thí dụ K1 Ta vào Name box đặt nuôn tên cho ô IsCheck

Bây click chọn vùng liệu A1:A100 cho ô A1 ô hành Thiết lập Conditional Formatting cho vùng với công thức sau:

=AND(COUNTIF($A$1:$A$100,$A1)>1,IsCheck) Nhấn nút Format để tô màu theo ý muốn, OK

Sau hoàn thành, bạn check vào checkbox, ô K1 thành True, có liệu trùng bị tơ màu

Trái lại, bạn uncheck checkbox, ô K1 có giá trị False, chẳng có bị tô màu

Cũng chiêu số 18, bạn hồn tồn dùng toggle Button làm công tắc bật tắt y checkbox

Chắc cần nói lại cách mà cơng tắc hoạt động:

Do công thức bạn AND(điều kiện 1, điều kiện 2), nên cần điều kiện không thoả (=False), nguyên đk chung False, CF khơng hoạt động; CF có tác dụng điều kiện chung True

Chiêu số 24: Dùng nhiều List cho Combobox

Excel cung cấp cho bạn cách để chọn thứ danh sách để nhập liệu vào ô Trong có cơng cụ combobox, từ danh sách xổ xuống

combobox, bạn chọn ngày tuần, tháng năm, sản phẩm danh sách Nếu bạn cần chọn lựa danh sách khác nhau, bạn nghĩ bạn cần combobox

Thay vậy, bạn dùng chiêu sau đây, kết hợp combobox với option button Trong thí dụ sau, bạn tạo bảng tính, điền số từ đến vào vùng A1:A7, điền từ chủ nhật đến thứ hai vào vùng B1:B7, điền tháng từ tháng đến tháng vào vùng C1:C7

Một cách nhanh để điền 21 ô gõ vào A1 Trong nhấn giữ Ctrl, nắm fill handle ô A1 kéo xuống A7 Tiếp theo, gõ Sunday vào B2, click vào fill handle B1 Cuối gõ Jan vào ô C1, doubled-click vào fill handle C1 Xong

Bây bạn vào Developer Controls Insert Form Controls (với Excel ➝ ➝ ➝

(89)

sheet Vẽ thêm Groupbox bao quanh Option cho đẹp Bây vẽ Combobox chỗ thích hợp

Nhấn chuột phải vào Option, chọn Edit Text, sửa từ Option1, Option 2, Option 3, Groupbox1 hình:

Nhấn chuột phải vào Option bất kỳ, chọn Format Control, tab Control, gõ $F$1 vào ô Cell Link

Ở ô D6 gõ công thức =ADDRESS(1;$F$1)&":"&ADDRESS(7;$F$1)

Vào Define Name, đặt name MyRange, công thức =INDIRECT($D$6) Nhấn chuột phải vào combobox, vào Format control, Cell link gõ MyRange, Cell link $G$1

(90)

D6 thay đổi với giá trị $A$1:$A$7, $B$1:$B$7, $C$1:$S$7 Và list combobox đổi theo

Bổ sung:

Có vấn đề list lúc dài (bằng thí dụ trên), thí dụ số từ đến 10, thứ tuần từ Chủ nhật đến thứ bảy, tháng từ đến 12 Vậy ta phải làm gì?

Ta làm từ từ nhé, trước tiên cách dùng ô phụ (tác giả dùng ô phụ)

Gõ công thức sau vào ô G1:

=COUNTA(INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS(100;$ F$1)))

Với cơng thức trên, G1 có giá trị 10, 7, 12 tương ứng với F1 1, 2, Sửa tiếp số chết công thức ô D6 thành $G$1 cho động:

=ADDRESS(1;$F$1)&":"&ADDRESS($G$1;$F$1)

Kết hồn tồn mỹ mãn Ơ D6 $A$1:$A$10, $B$1:$B$7, $C$1:$C$12

Bây cách GPE: dấu (bỏ) ô phụ

Hiện Name MyRange ta =INDIRECT($D$6),

(91)

=INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS(COUNTA(INDIR ECT(ADDRESS(1;$F$1)&":"&ADDRESS(100;$F$1)));$F$1))

Ta đàng hồng xố D6 G1 Chỉ cịn F1 link cell options, ta format thành chữ trắng OK

Trong file đính kèm đây, tơi chưa xố ô D6 ô G1, để lại cho bạn xem chơi, từ từ xoá sau

Chiêu thứ 25: Tạo danh sách xác thực thay đổi theo lựa chọn từ một danh sách khác

Trước tiên, cần chuẩn bị số liệu để thực hành Bạn tạo sheet đặt tên List ô A1 nhập vào tiêu đề “Objects” Tại ô B1 nhập vào tiêu đề “Corresponding List” Vùng A2:A5 bạn nhập vào từ “Can” Vùng A2:A9 nhập vào từ “Sofa” Vùng A10:A13 nhập vào từ “Shower” Vùng A14:A17 nhập vào từ “Car” Sau đó, vùng B2:B17 bạn nhập vào từ sau: Tin, Steel, Opener, Lid, Bed, Seat, Lounge, Cushion, Rain, Hot, Cold, Warm, Trip, Journey, Bonnet, Boot

Tại ô C1 nhập vào tiêu đề “Validation List” Kế đó, bạn nhập vào từ sau ô C2:C5: Can, Sofa, Shower Car Đây danh sách chứa từ từ vùng A2:A17

Bạn dùng chứa Advanced Filter để lọc danh sách cách chọn vùng A2:A17 Data Sort & Filter Advanced (E2003: Data Filter chọn Unique Records Only chọn Filter the

➝ ➝ ➝ ➝ ➝➝ ➝

List in Place OK Sau chép danh sách kết lọc dán vào vùng C2:C5 Advanced Filter) ➝ Sau nhập xong bạn có danh sách hình sau:

(92)

=OFFSET($A$2,0,0,COUNTA($A$2:$A$20),1)

Nhấn nút OK sau nhập xong công thức Tiếp theo, bạn nhấn New (E2003: nhấn Add) để tạo Name Trong hộp Name nhập vào tên “ValList” Refer To nhập vào =$C$2:$C$5 Nhấn Close để đóng hộp thoại lại

Bạn chèn thêm sheet có tên “Sheet1” Bạn vào Formular chọn Define Names Manager ➝ ➝ ➝ chọn New (E2003: Insert Name Define) Trong hộp Name bạn nhập vào “CorrespondingList” ➝ ➝ Refer To nhập vào công thức sau: Name

=OFFSET(INDIRECT(ADDRESS(MATCH(Val1Cell,Objects,0) +1,2,,,"Lists")),0,0,COUNTIF(Objects,Val1Cell),1)

Tiếp tục nhấn New (hoặc Add Excel 2003) để thêm Name Trong hộp Name bạn đặt tên Val1Cell Refer To nhập vào =$D$6 nhấn OK

Tiếp tục nhấn New để thêm Name với tên Val2Cell Refer To =$E$6 nhấn OK sau hoàn tất Các Name mà bạn tạo hình sau:

(93)

Chọn E6, sau vào ngăn settings hộp thoại Data Validation Bạn chọn List Allow nhập vào =CorrespondingList hộp Source, đánh dấu chọn vào In-cell dropdown nhấn OK để hoàn tất Trong q trình thiết lập Data Validation cho E6, bạn nhận thông báo lỗi “The source currently evaluates to an error Do you want to continue?” Bạn chọn Yes Lỗi xuất ô D6 rỗng Bạn thử chọn tên danh sách ô D6 xem thay đổi tương ứng danh sách E6 hình minh họa sau:

Chiêu 26: Sử dụng chức thay (Replace) để gỡ bỏ các ký tự không mong muốn.

Khi nhập liệu hay chép dán liệu từ nguồn khác vào Excel ký tự khơng mong muốn xuất tồn bảng tính bạn Sử dụng chiêu bạn khắc phục rắc rối gỡ bỏ ký tự không mong muốn tay Chức thay (replace) Excel giúp bạn gỡ bỏ ký tự không mong muốn bảng tính, phải qua vài bước phụ

(94)

biết bạn sử dụng hàm CODE

Hàm CODE trả mã số cho ký tự chuỗi Mã tương đương ký tự mà máy tính bạn thiết lập

Để thực điều này, chọn có chứa ký tự không mong muốn Từ công thức, bôi đen ký tự chép ký tự Tiếp theo chọn ô trống (A1 chẳng hạn) dán ký tự vào chọn (A1)

Tại ô khác, nhập công thức sau: =CODE($A$1)

Công thức trả mã ký tự không mong muốn

Chọn toàn liệu bạn, chọn Home Editing Find & Select Replace ➝ ➝ ➝

(với phiên trước Excel 2007: chọn Edit Replace…), khung Find what: ➝

nhấn phim Alt gõ số kèm theo code đưa công thức Nếu mã số 163 nhấn Alt nhấn 0163 (Hoặc bạn để trỏ chuột có ký tự khơng mong muốn, chép ký tự dán vào Find what được)

Bỏ trống khung Replace With nhấn Replace all Việc làm xóa bỏ tất ký tự khơng mong muốn nhanh qua việc dị tìm mã ký tự Lặp lại bước cho ký tự không mong muốn

Chiêu thứ 27: Chuyển đổi số dạng văn sang số thực

Các giá trị số (number) Excel mặc định canh lề phải văn (text) canh lế trái Do vậy, cách đơn giản để nhận biết giá trị số văn cột bảng tính bạn thiết lập chế độ canh lề mặc định cho cột Bạn vào Home nhóm Alignment chọn Format Cells vào ngăn ➝ ➝ ➝

Alignment (E2003: Format Cells Alignment) chọn General hộp ➝ ➝ ➝

Horizontal để thiết lập việc canh lề mặc định cho cột chọn nhấn OK để ➝

(95)

Bạn kéo cột rộng để đễ phân biệt việc canh lề, bạn thấy giá trị số, ngày tháng canh lề phải văn canh lề trái

Dùng Paste Special để chuyển giá trị số dạng văn sang số thực

Đây cách nhanh dễ dàng để chuyển giá trị số dang văn sang số thực Các bước thực sau:

Chọn ô trống nhấn lệnh Copy (Ctrl + C) quét chọn vùng số ➝

liệu dạng văn định chuyển đổi (ví dụ vùng A1:A9 hình trên) nhấp ➝

phải chuột chọn Paste Special… chọn Add nhóm Operation nhấn OK ➝ ➝

để hoàn tất

Việc làm giúp chuyển toàn số số dạng văn sang số thực, rỗng có giá trị bạn cộng số vào số lưu dạng văn Excel bạn làm cho số dạng văn chuyển thành số thực

Dùng hàm TEXT để chuyển đổi

(96)

thuộc nhóm TEXT kết trả dạng số Excel xem số giá trị dạng văn

Giả sử bạn có vùng liệu A1:A7 hình sau:

(97)

=LEFT(A1,FIND(" ",A1)-1)

Sau dùng hàm để tách phần giá trị kết trả Excel xem văn chúng canh lề trái hình sau:

Do vậy, bạn cần phải hiệu chỉnh cơng thức tác chuỗi để kết trả số thực cách cộng thêm số vào sau công thức trên: =LEFT(A1,FIND(" ",A1)-1) +

Chiêu 28: Trích xuất liệu số chuỗi VBA

(98)

liệu số xen lẫn chữ như: “1,254.00VND” “USD 2,500.00”, chí cịn phức tạp

Và có bạn nhập liệu hỗn hợp text số khơng theo quy luật để lấy riêng số hàm tách chuỗi thông thường

Dùng hàm tự tạo viết VBA, bạn trích xuất riêng phần số ra, chuỗi có kiểu dạng

Bạn nhấn Alt-F11 để vào cửa sổ VBA, insert module dán đoạn code sau vào:

PHP Code:

Function ExtractNumber(rCell As Range) Dim lCount As Long

Dim sText As String Dim lNum As String sText = rCell

For lCount = Len(sText) To Step -1 If IsNumeric(Mid(sText, lCount, 1)) Then lNum = Mid(sText, lCount, 1) & lNum End If

Next lCount

ExtractNumber = CLng(lNum) End Function

Vào lại Excel, ô B1 gõ liệu số xen lẫn text tuỳ ý, ô kế bên C1 gõ công thức:

=ExtractNumber(B1)

Ta có kết hình:

Bổ sung:

Vẫn chút vấn đề: liệu số thập phân ô B5, liệu gồm nhóm số riêng biệt trở lên B4, kết không ý muốn

1 Để giải vấn đề số thập phân, ptm0412 có hàm khác: PHP Code:

(99)

Dim Sotp As Double, Le As Byte Neg =

Le =

For i = To Len(Mystr) tam = Mid(Mystr, i, 1) Select Case tam

Case To

Kqtam = Kqtam & tam Case "-"

Neg = -1 Case Dautp Kqng = Kqtam Le =

Mystr = Right(Mystr, Len(Mystr) - i) Kqtp = CtoN(Mystr)

Sotp = Kqtp * 10 ^ (-Len(Kqtp)) End Select

Next i

Select Case Le Case

CtoN = IIf(Kqtam = "", 0, Kqtam) Case

CtoN = Kqng + Sotp End Select

CtoN = CtoN * Neg End Function

Ghi chú:- Khi sử dụng hàm này, bạn thêm vào hàm tham số cho biết dấu thập phân dấu nào, “,” hay “.” Thí dụ =CtoN(“USD 14255.20”,”.”), bạn biết số ngun khơng cần thêm

- Hàm đọc số âm ký hiệu số âm dấu trừ đứng trước số

2 Để giải vấn đề nhiều nhóm số khác chuỗi, Ptm0412 có hàm:

PHP Code:

Function CtoNPlus(Mystr As String, sttchuoi As Byte, Optional Dautp As String) As Double

(100)

If Len(Newstr) < Then Exit For CtoNPlus = CtoN1st(Newstr, Dautp) Next i

Newstr = "" End Function PHP Code:

Function CtoN1st(ByVal Mystr As String, Optional Dautp As String) As Double Dim Kqng, Kqtp, Neg As Double, Kqtam As String

Dim Sotp As Double, Le As Byte, NewStr2 As String Neg =

Le =

For i = To Len(Mystr) tam = Mid(Mystr, i, 1) Select Case tam

Case To

Kqtam = Kqtam & tam

If IsNumeric(Mid(Mystr, i + 1, 1)) = False And _

Mid(Mystr, i + 1, 1) <> "," And Mid(Mystr, i + 1, 1) <> "." Then Newstr = Right(Mystr, Len(Mystr) - i)

Exit For End If Case "-" Neg = -1 Case Dautp Kqng = Kqtam Le =

NewStr2 = Right(Mystr, Len(Mystr) - i) Kqtp = CtoN1st(NewStr2)

Sotp = Kqtp * 10 ^ (-Len(Kqtp)) End Select

Next i

Select Case Le Case

CtoN1st = IIf(Kqtam = "", 0, Kqtam) Case

CtoN1st = Kqng + Sotp End Select

CtoN1st = CtoN1st * Neg End Function

Cú pháp hàm: CtoNPlus(Mystr , sttchuoi, [Dautp])

(101)

Xem file kèm theo

Chiêu thứ 29: Tùy biến thích bảng tính

Khi chèn thích cho ô lệnh Review Comments New Comment ➝ ➝ (E2003: Insert Comment) Excel mặc định chèn tên người dùng máy tính vào ➝ hộp thích Bạn thay đổi điều cách vào Office Excel Options ➝ ➝ Popular (E2003: Tools Options General) Bạn nhập lại đoạn văn mặc định mong ➝ ➝ muốn hộp User name:

Mặc dù thích cho có mục đích hiển thị thơng báo cho bạn cho người dùng khác, bạn tùy biến nhằm mục đích làm rõ chủ ý bạn

Trước tiên, bạn cần tùy biến Quick Access Toolbar (QAT) để thêm nút lệnh vào đó, bước thực sau: Office Excel Options Customize Tại hộp Choose ➝ ➝ commands from bạn chọn Smart Art Tools | Format Tab nhấn nút Add để thêm vào ➝ QAT nhấn OK hoàn tất (E2003: gọi Drawing cách View Toolbars ➝ ➝ ➝ Drawing)

(102)

Chèn thích cho cách vào ngăn Review nhóm Comments chọn ➝ ➝ New Comment (E2003: Insert Comment) Một hộp thích xuất bạn ➝ nhập nội dung thích vào

Để thay đổi hình dạng hộp thích bạn nhấp trái chuột lên khung viền để khỏi chế độ nhập liệu chọn lệnh Change AutoShape từ QAT chọn kiểu ➝ ➝ hình dạng mong muốn nhóm hình Basic Shapes, Block Arrow, Flow Chart, Callouts Stars and Banners sau chọn hình hình dạng hộp thích ➝ thay đổi tức

(103)

chú thích vào Drawing chọn nút lệnh Shadow Settings chọn kiểu mong ➝ ➝ ➝ muốn:

Thêm ảnh vào thích

Một điều thú vị bạn dùng hộp thích để hiển thị ảnh mà không làm ảnh hưởng đến nội dung khác Thí dụ như, bạn chèn đồ thị vào hộp thích nhằm minh họa tốt cho số liệu mà không cần phải lúc đồ thị lên

(104)

[FONT=&quot]

[/FONT]

Trích xuất nội dung thích

Để trích xuất nội dung hộp thích, cần viết hàm người dùng đơn giản Bạn nhấn tổ hợp ALT+F11 để vào cửa sổ VBE vào ngăn Developer Code ➝

Visual Basic (E2003: Tools Macro Visual Basic Editor), sau vào Insert chọn

➝ ➝ ➝ ➝

Module nhập vào đoạn mã sau:➝ [highlight=VB]

Function GetCommentText(rCommentCell As Range) Dim strGotIt As String

On Error Resume Next

strGotIt = WorksheetFunction.Clean(rCommentCell.Comment.Text) GetCommentText = strGotIt

(105)

End Function [/highlight]

Vào File Save (Ctrl+S) để lưu Module, sau vào File Close and Return to Microsoft ➝ ➝ Excel (ALT+Q) để trở cửa sổ bảng tính Bạn vào ô trống nhập vào: =GetCommentText(B2)

[FONT=&quot]Với B2 có thích Nhấn Enter để xem kết quả.[/FONT][/FONT]

Chiêu 30: Sort thứ tự dựa nhiều ba cột

Chức sort Excel bị giới hạn với sort phạm vi cột Trong hầu hết trường hợp, sort theo cột đủ bạn cần sort nhiều cột liệu Chiêu giúp bạn vượt qua hạn chế

Với ví dụ sau, chúng tơi giả sử bạn có cột liệu liên quan với A, B, C, D E, bạn muốn sort liệu theo cột A, cột B, cột C, tiếp cột D cuối cột E

Để làm điều này, bạn sort theo thứ tự ngược: sort theo cột cuối trước tiếp

theo ngược đến cột Chọn cột từ A đến E, sau chọn Data Sort ➝

Chọn để sort theo thứ tự cột C đầu tiên, đến cột D sau đến cột E Nhấn

vào sort Bây chọn cột từ A đến E chọn Data Sort Lúc này, sort theo thứ tự ➝

cột A trước đến cột B Click sort thứ xếp theo thứ tự

Excel sort theo cột thay cột Nếu bạn muốn Excel tự động làm điều này, bạn sử dụng macro mà sort theo vùng chọn giả định liệu bạn có tiêu đề cột xác định định dạng hàng vùng chọn Nếu tiêu đề in đậm, Excel cho biết chúng tiêu đề khơng sort chúng Thay vào đó, sort cột bên trái trước tới cột bên phải tối đa 256 cột Đoạn code macro bạn cần sử dụng phải đặt module chuẩn Để làm điều

này, bạn chọn Tools Macro Visual Basic Editor (Hoặc nhấn Alt+F11), sau chọn ➝ ➝

Insert Module gõ đoạn code sau vào:➝

PHP Code: Sub SortByX( ) Dim i As Long

For i = Selection.Columns.Count To Step -1 Selection.Sort Key1:=Selection.Cells(2, i), _

Order1:=xlAscending, Header:=xlGuess, Orientation:=xlTopToBottom Next i

End Sub

http://www.giaiphapexcel.com/ http://www.microsoft.com/downloads/s displaylang=vi, SUMIF SUMIFS http://www.ozgrid.com/Excel/arrays.htm. DSUM SUMPRODUCT

Ngày đăng: 08/04/2021, 18:01

TỪ KHÓA LIÊN QUAN

w