Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 56 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
56
Dung lượng
322 KB
Nội dung
30 “tuyệt chiêu” Excel Hàm vnd đổi số chữ Excel Xem thêm : Sau tuyệt chiêu hay mà tớ sưu tầm được, xin chia với bạn chưa biết biết chưa thành thạo Mục lục: 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 để 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 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 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 hơn… Xin hân hạnh giới thiệu đến bạn sách "Một ngày tuyệt chiêu", lược dịch từ Excel Hacks, hai tác giả David Raina Hawley Những "tuyệt chiêu" giúp bạn tránh lỗi, làm việc với bảng tính cách có hiệu Trước nói đến "tuyệt chiêu" Excel, xin nói sơ qua chút số thủ thuật quy tắc bản, điều giúp bạn thực "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 tin với Nhưng không may, có nhiều người thiết kế bảng tính với 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 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, 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 hoàn thành, không cần phải thêm vào liệu công thức khác, bạn 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 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 mang lại cho người dùng thông tin xác, 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 luôn cố gắng để giữ mối liên quan liệu liên tục 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 tận dụng tối đa tính mạnh mẽ Excel PivotTable, SubTotal… Bạn sử dụng tính bạn gom hết liệu bạn vào bảng thật đơn giản 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ế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 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 giúp ích đáng kể cho tốc độ xử lý số hàm Những mẹo nhỏ định dạng Ngoà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 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 mà bạn nên áp dụng cho bảng tính, 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 (í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à điều tốt rồi, đừng thay đổi 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; 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à Chỉ định dạng ô theo kiểu text thật cần thiết Bởi tất liệu nhập vào ô định dạng trước theo kiểu text bị chuyển thành liệu kiểu text, bạn nghĩ bạn nhập vào liệu kiểu số hay liệu kiểu ngày tháng Và tồi tệ nữa, ô chứa công thức tham chiếu đến ô định dạng theo kiểu text, bị định dạng thành kiểu text Nói chung, bạn đâu có muốn ô chứa công thức lại bị định dạng theo kiểu text, phải không 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ộ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 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 toà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 Đó thói quen vô tai hại mà bạn phải tránh xa Bởi 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 toán chậm liệu cập nhật Để giải vấn đề này, bạn thường khuyên chuyển đổi chế độ tính toá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 Options ➝ Formulas (với Excel 2003 trở trước, chọn menu Tools ➝ Options ➝ Calculations), chọn Manual : Chọn Manual Caculation với Excel 2007 Chọn Manual Caculation với Excel 2003 Tuy nhiên, lời khuyên 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 toán, bạn chạy bảng tính chế độ tính toá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ắn lúc bạn 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 toá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 toán Manual Nếu bạn thấy cần phải đặt bảng tính chế độ tính toá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, sử dụng chú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, dừng hẳn luôn, bạn bắt buộc phải dùng chế độ tính toán tay Excel có nhiều hàm chuyên xử lý liệu lớn thay cho công thức mảng, mà đề cập đến chiêu thứ 79: Tránh lỗi #VALUE! tính tổng (SUM) đếm (COUNT) ô Ngoài ra, Excel Help có số ví dụ hay giúp bạn cách để dùng công thức bảng liệu lớn để trích kết dựa theo tiêu chuẩn Hoặc bạn sử dụng Pivot 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, thành thật khuyên bạn học cách sử dụng Một bạn làm chủ PivotTable, ngày bạn tự hỏi sống mà 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ì nói nhiều quá), bạn cần nhớ chuyện thôi: Excel chạy tốt tất liệu bạn xếp liên tục với bảng Nó giúp cho bạn thực hành chiêu sau cách dễ dàng 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, lưu thành tập tin workspace (không gian làm việc) xlw để sử dụng lại sau Đô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 chọn tập tin bảng tính cần mở | nhấn nút Open để mở tập tin (E2003: File | Open…) Từ cửa sổ làm việc bảng tính mở đó, chọn Windows | View | Arrange All (E2003: Window | Arrange) Nếu tùy chọn “Windows of active workbook” chọn bỏ chọn, sau chọn kiểu xếp nhấp nút OK 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: Nếu chọn kiểu xếp Horizontal (nằm ngang) bảng tính xếp chồng lên hình minh họa sau: Nếu chọn kiểu Vertical (thẳng đứng) bảng tính xếp nằm cạnh sau: Nếu chọn kiểu Cascade (thác nước) bảng tính xếp đè lên hình minh họa sau 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ế độ toà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 hoàn tất công việc với cửa sổ Để sử dụng lại không gian làm việc thiết lập trước đó, bạn cần mở tập tin xlw vừa tạo giao diện làm việc bạn thiết lập trước khôi phục Tất hiệu chỉnh hay cập nhật thông tin bảng tính workspace Excel nhắc nhở bạn lưu lại bạn lệnh đóng workspace Nếu ngày, bạn phải thực công việc lặp lặp lại nhiều bảng tính Tôi khuyên bạn nên dành thời gian để thiết lập kiểu không gian làm việc cho bảng tính tùy thuộc vào yêu cầu tao tác xử lý số liệu chúng Sau đó, bạn việc mở tập tin xlw cho kiểu không gian 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 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 lại nhóm Điệp vụ hoàn tất nhanh chóng (nghe giống 007 nhỉ) Để thoát khỏi tình trạng group, bạn việc click chọn sheet khác 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 vuông) Nhìn vào bạn biết bạ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 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 Dù phương pháp dễ nhất, có nghĩa bạn phải nhớ nhớ group ungoup cần, không bạn vô tình ghi đè lên liệu sheet mà bạn không nhìn thấy hình thời Thí dụ bạn muốn ghi lúc liệu vào vùng bảng tính, vùng liệu sheet phải khác Thế sheet group có thèm quan tâm bạn nhập liệu vùng đâu? 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 Trong đoạn code trên, sheet5 ghi mảng Array, bạn muốn sheet mà bạn gõ liệu nhập vào Bạn chọn sheet khác để group chúng lại bên sheet5 Sau gõ code xong, nhấn nút View Object, nhấn nút View Microsoft Excel, nhấn Alt- Q, Alt-F11 đóng hẳn cửa sổ VBA trở hình Excel Lưu bảng tính lại 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 Đoạn code phải đặt khung soạn thảo riêng sheet5 Đ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 nguyên 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 Office ➝ Excel Opions ➝ Trust Center ➝ Trust 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 Disable all macros without notification[E2003: mức High], Excel ngăn không cho chạy tất macro có bảng tính Nói cách khác, cần phải dùng macro có bảng tính, người sử dụng chọn mức an toà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 Office ➝ Save, 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à 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 Develope ➝ Visual Basic (hoặc nhấn Alt+F11), nhấp đúp chuột vào mục ThisWorkbooktrong khung Project Explorer Nếu Ribbon bạn mục Develope, bạn vào Excel Options ➝ Popular, đánh dấu vào tùy chọn Show Develope tab in the Ribbon, nhấn OK [E2003, nhấn phải chuột vào biểu tượng Excel bên trái menu File menu, chọn mục View Code, minh họa hình bên dưới]: 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 End If End Sub 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 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 (macroenable workbook), có phần mở rộng *.xlsm, 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 ngoài, nói trên, bạ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: PHP Code: 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, 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 Conditional Formatting, gõ công thức sau: = Mod(Row(),2) Nhấn format chọn màu tô cho dòng lẻ Nguyên nhân tô dòng lẻ: Công thức cho giá trị 1, 0, 1, 0, … đến hết dòng 100, tương ứng với True, False, … Conditional Formatting tô dòng True 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: Vào menu ASAP – Row & Column – Color Each n’th row or column in selection 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 tô màu - Nếu bạn đứng dòng 10, công thức trở thành =And( Mod(Row(),2),CountA($A10:$H10)) nghĩa dòng chẵn có liệu => không tô màu - Nếu bạn đứng dòng 59: dòng lẻ 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 liệu không tô màu Chiêu thứ 22: Tạo hiệu ứng 3D bảng tính hay ô 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 Tronghộ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 Quay trở lại với box color để chọn màu trắng Vẫn chọn đường viền dày thứ 2, chọn hai đường viền lại đường viền bên bên trái ô 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ứ (thứ bên phải từ đếm lên) bảng line chắn màu chọn màu đen cho đường viền bên trái Chọn màu trắng bảng màu cho đường viền bên phải bên ô Chọn tab Patterns chọn màu xám Click OK Ô E5 bị lõm xuống Việc trái ngược với ô D5 hiệu ứng trội lên 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 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ả Bây chọn vùng D5:J5 click chọn công cụ Format Painter lần Cùng lúc nhấn chuột trái, chọn ô D6, kéo chuột ngang sang phải kéo xuống ô J15, sau nhả 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 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ỹ Thí dụ dùng màu khác 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 chuyên 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 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 With Selection.Borders(xlEdgeTop) LineStyle = xlContinuous 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ạ, đ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 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 Trong thí dụ đây, bạn dùng CF để đánh dấu (tô màu) ô có 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 hoàn toà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, doubledclick 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 2003, View ➝ Toolbars ➝ Forms) nhấn icon Option Button Vẽ lên 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 Bây bạn chọn option, ô F1 thay đổi giá trị từ đến 3, ô 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 hoàn toà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), Sửa bước thứ thay $D$6 công thức D6: =INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS($G$1;$F$1)) Kế thay $G$1 công thức G1: =INDIRECT(ADDRESS(1;$F$1)&":"&ADDRESS(COUNTA(INDIR ECT(ADDRESS(1;$F$1)&":"&ADDRESS(100;$F$1)));$F$1)) Ta đàng hoàng xoá ô D6 ô G1 Chỉ ô F1 link cell options, ta format thành chữ trắng OK Trong file đính kèm đây, chưa xoá ô 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ừ 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: Bước định nghĩa số Name cho List Bạn vào Formulas ➝➝ Name Manager ➝ chọn New (E2003: Insert ➝ Name ➝ Define) Trong hộp Name bạn nhập vào từ “Objects” Tại hộp Refer To bạn nhập vào công thức sau: Define Names =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: Chúng ta chuẩn bị xong thứ cần thiết, đến lúc áp dụng chức Data Validation Bạn chọn ô $D$6 Sheet1, sau vào ngăn Data ➝ nhóm Data Tools bạn chọn Data Validation ➝ chọn ngăn Settings hộp thoại Data Validatin (E2003: Data ➝ Validation ➝ Settings) Bạn chọn loại List hộp Allow hộp Source nhập vào =ValList, đánh dấu chọn In-cell dropdown, sau nhấn OK để hoàn tất 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 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ỏ 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 toà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ụ Ví dụ như, bạn thay ký tự không mong muốn chuỗi rỗng tựa chưa tồn Muốn bạn cần biết mã ký tự mà bạn muốn gỡ bỏ Tất ký tự mang mã riêng Excel cho bạn 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 để đóng hộp thoại Format Cells lại 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 Bạn áp dụng nguyên tắc cách vào số hàm có sẵn Excel để thực việc chuyển đổi Thông thường, bạn dùng hàm 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: Bạn dùng hai hàm nhóm TEXT LEFT FIND để tách giá trị khỏi chuỗi văn sau: =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 Bạn thường lấy liệu từ nguồn ngoài, chẳng hạn từ Internet, có liệu số xen lẫn chữ như: “1,254.00VND” “USD 2,500.00”, chí 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 Để giải vấn đề số thập phân, ptm0412 có hàm khác: PHP Code: Function CtoN(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 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ố nguyên không cần thêm - Hàm đọc số âm ký hiệu số âm dấu trừ đứng trước số Để 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 Newstr = Mystr For i = To sttchuoi 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]) Sttchuoi số thứ tự nhóm số chuỗi, Dautp ký tự dấu phân cách thập phân 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) 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 để thoát 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 Đối với phiên Excel 2007 việc hiệu ứng 3-D cho hộp thích thiết lập mặc định tùy chọn Shadow Setting bị loại bỏ Bạn thay đổi tùy chọn đổ bóng, hiệu ứng 3-D phiên Excel trước sau: chọn khung viền hộp 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 Để thêm hình, bạn chọn ô có thích ➝ nhấp phải chuột lên ô ➝ chọn Edit Comment ➝ chọn khung viền hộp thích ➝ nhấp phải chuột ➝ chọn Format Comment (E2003: nhấp chuột lần liên tiếp lên khung viền hộp thích) ➝ chọn ngăn Colors and Lines ➝ hộp Color, chọn Fill Effects ➝ chọn nút Select Picture ➝ chọn hình nhấn Insert ➝ OK ➝ OK 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 On Error GoTo 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) Với B2 ô có thích Nhấn Enter để xem kết 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, 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 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 Để quay lại excel, bạn đóng cửa sổ code lại nhấn Alt+ Q Ngay bạn dán đoạn code vào, bạn thực việc sort này: Tô chọn vùng cần sort, kể tiêu đề, chạy code Hàm vnd đổi số chữ Excel Xem thêm viết chuyên mục này: • File Excel quản lý bán hàng 17/10/2012 • Tính NPV dự án có vòng đời khác 17/10/2012 • Kế Toán Excel theo QD15 - QD48 - Theo hình thức Chứng từ ghi sổ 04/10/2012 • Hàm excel sử dụng cho hóa đơn nhập kho nào? 04/10/2012 • Mình nhờ Bác giúp em tạo phiếu thu - chi (1 nợ nhiều có ) ngược lại 30/09/2012 • Lỗi #N/A hàm Vlookup 14/09/2012 • Làm để đánh dấu dòng có cột D Cột E giống (đưa dùm bạn) 12/09/2012 • Lỗi tạo sheet excel 2003 09/09/2012 • Thêm sổ tổng hợp chi tiết vào file excel 07/09/2012 • Phụ lục miễn giảm thuế TNDN, GTGT, TNCN theo thông tư 140/2012/TTBTC excel 06/09/2012 [...]... bạn sẽ bị mất những thứ sau đây: Với những bảng tính tạo ra từ Excel 2007: - Những tính năng mới của Excel 2007 - Các PivotTable và các biểu đồ (chúng vẫn được lưu lại, nhưng sẽ mất hết khi bạn mở ra và lưu lại với dạng bình thường của Excel) - Các VBA Project Với những bảng tính tạo ra từ những phiên bả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... chọn sao cho ô A1 là ô hiện hành, để Excel hiểu đúng điều kiện trong công thức CountIf Và: Excel 2003 giới hạn bởi 3 điều kiện, trong khi đó Excel 2007 chỉ bị giới hạn bởi bộ nhớ hệ thống Chiêu số 12: Tạo riêng một thanh công cụ cho riêng một bảng tính cụ thể Bạn đã từng tạo ra thanh công cụ riêng cho mình? Bạn có thấy rằng, thanh công cụ này luôn luôn được nạp vào Excel, và luôn hiển thị, với bất kỳ... thành công bằng chiêu này, để không bao giờ bực mình vì những con ma quấy nhiễu nữa Chiêu thứ 15: Giảm kích thước file Excel bị phình to bất thường Bạn có bao giờ có 1 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ý do làm cho bảng tính bị phình lên về kích thước file và có những cách để loại trừ Những bí quyết sau đây có thể giúp bạn nếu bạn có 1 file Excel có kích thước... dữ liệu thô, chỉ giữ lại phần trình bày Sau đó, bạn nhấn F12 (Save as…) rồi chọn Excel Template: Chọn loại file là Excel Template trong cửa sổ Save Bạn hãy đặt cho nó một cái tên dễ nhớ, rồi nhấn Save Theo mặc định thì Excel sẽ lưu bảng tính mẫu này vào Thư mục chứa các Template đã được tạo ra khi bạn cài đặt Excel 2007: Excel sẽ tự động chọn thư mục để lưu các Template Mỗi khi cần sử dụng một bảng tính... GoTo 0 End Sub Rồi nhấn Alt+Q để quay lại Excel Bây giờ, bạn hãy dùng chuột hoặc nhấn Ctrl+PgUp/Ctrl+PgDn để chọn qua lại các Sheet và xem thử cái gì xuất hiện trên màn hình Xin đính kèm theo đây bảng tính đã có sẵn những đoạn code nói trên, cùng một "MyCustomToolbar" làm ví dụ Cũng xin nhắc lại, chiêu này chỉ có tác dụng với những phiên bản trước Excel2 007 Chiêu thứ 13: Sao chép công thức giữ nguyên... 13: Sao chép công thức giữ nguyên tham chiếu tương đối (giống như sao chép tham chiếu tuyệt đối) Trong Excel, 1 công thức có thể chứa những tham chiếu tương đối hoặc tuyệt đối Khi 1 công thức có tham chiếu tương đối được sao chép, thì do tính chất, tham chiếu sẽ chạy theo đến chỗ mới Chỉ có công thức có tham chiếu tuyệt đối mới giữ nguyên khi sao chép Xin nhắc lại 1 tí: Khi bạn muốn công thức, dù cho... và bạn phải đặt nó trong Module thì Excel mới có thể thấy được thủ tục này Nhấn Alt+Q để đóng cửa sổ VBE trở về bảnh tính Excel Kể từ lúc này, bạn nhấp phải chuột tại bất kỳ ô nào trong bất kỳ worksheet nào thì trong trình đơn ngữ cảnh sẽ có thêm lệnh “Sheet Index” giúp bạn điều hướng đến bất cứ worksheet nào trong workbook một cách dễ dàng nguồn : giải pháp excel Chiêu thứ 8: Giới hạn vùng cuộn của... công cụ mặc định của Excel? Thậm chí trong cùng một cửa sổ Excel, nhưng khi bạn kích hoạt bảng tính B, thì mới thấy thanh công cụ A, còn khi nhấn Ctrl+Tab để chuyển sang bảng tính khác, thì thanh công cụ A này sẽ biến mất? Thiết nghĩ, chắc hẳn đã có lúc bạn muốn điều tôi vừa nói Vì nó giúp cho thanh công cụ của Excel luôn gọn gàng, ngăn nắp (luôn là thanh công cụ mặc định của Excel) , nếu không phải... chính xác, Excel sẽ hiển thị tên của Sheet khi bạn nhấn Enter Có thể bạn sẽ thấy được gì đó… 3 Nếu hai cách trên không đem lại cho bạn điều gì, bạn hãy vào trang web Openoffice.org, download phiên bản miễn phí của bộ phần mềm này về Ngoại trừ các tên trên menu và toolbar, Openoffice.org khá giống Excel, vì nó được tạo ra cùng một cấu trúc bảng tính với Excel (có đến 96% các công thức trong Excel có thể... phải điều chỉnh lại cho đúng… Chiêu số 18: Điều khiển Conditional Formating bằng checkbox Mặc dù Conditional Formating là 1 trong những chiêu mạnh của Excel, nhưng muốn bật hay tắt nó bằng ribbon hay menu thì khá bực bội Bây giờ ta biến hoá bằng cách điều khiển bằng 1 checkbox giống như 1 công tắc (hoặc 1 cái toggle Button càng giống hơn) Conditional Formating có từ đời Excel 97, gán định dạng cho những ... 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... chuyện thôi: Excel chạy tốt tất liệu bạn xếp liên tục với bảng Nó giúp cho bạn thực hành chiêu sau cách dễ dàng 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ỉ... chọn Excel Template: Chọn loại file Excel Template cửa sổ Save Bạn đặt cho tên dễ nhớ, nhấn Save Theo mặc định Excel lưu bảng tính mẫu vào Thư mục chứa Template tạo bạn cài đặt Excel 2007: Excel