Thảo luận về loạt bài 'Những tuyệt chiêu trong Excel

Liên hệ QC
Chiêu thứ 25: Tạo một danh sách xác thực thay đổi theo sự lựa chọn từ một danh sách khác
Trong chiêu này chỉ có thể lọc trong ô D6 và ô E6, nhưng em cần khoảng 200 hàng có thể lọc giống ô D6 và E6 nếu làm tay từng dòng thì mất thời gian quá, có cách nào khác không
Cám ơn
 
bạn thử copy D6:E6 rồi paste vào vài ba dòng xem sao?
 
Mình đã thử rồi, nhưng cách làm của tác giả là lọc ô E6 theo ô D6, nếu mình copy xuống như vậy thì ô E7 vẫn lọc theo ô D6 chứ không lọc theo ô D7, nếu muốn lọc theo ô D7 thì phải chỉnh tay thì mới có thể lọc E7 theo D7 được
 
Tạo chỉ mục cho các Sheet trong Workbook
Bạn ơi có thể giúp mình cái này được không.
Mình đã làm như bạn và đã thực hiện được. Tuy nhiên file của mình quá lớn (>200sheets) do đó mình muốn bạn giúp mình khi chọn "Sheet Index" thì nó ra luôn một list đầy đủ các sheet để mình lực chọn. (Hiện nay mình phải chọn qua 1 bước trung gian nữa)
Cám ơn bạn
 
Nhờ Ban Quan Trị, sửa lại đoạn code trong <Những "Tuyệt Chiêu" trong Excel> Bài 28: Trích xuất dữ liệu số trong 1 chuỗi bằng VBA (link : http://www.giaiphapexcel.com/forum/showthread.php?14768-Nh%E1%BB%AFng-tuy%E1%BB%87t-chi%C3%AAu-trong-Excel&p=114335#post114335)
VD : Em cần lấy số thứ 3 (tức: 5,01) trong chuỗi sau ở ô A1: 12,01 - 7 = 5,01 . Em dùng hàm CtoNPlus(A1;3;","), thì kết quả nhận được là: 5,1 .Hàm CtoN cũng tương tự.
Đoạn code đó không đúng cho trường hợp số thập phân có số "0" sau dấu ","
Mong các Anh chị sửa lại dùm em đoạn code, em cám ơn nhiều lắm !
 
Nhờ Ban Quan Trị, sửa lại đoạn code trong <Những "Tuyệt Chiêu" trong Excel> Bài 28: Trích xuất dữ liệu số trong 1 chuỗi bằng VBA (link : http://www.giaiphapexcel.com/forum/showthread.php?14768-Những-tuyệt-chiêu-trong-Excel&p=114335#post114335)
VD : Em cần lấy số thứ 3 (tức: 5,01) trong chuỗi sau ở ô A1: 12,01 - 7 = 5,01 . Em dùng hàm CtoNPlus(A1;3;","), thì kết quả nhận được là: 5,1 .Hàm CtoN cũng tương tự.
Đoạn code đó không đúng cho trường hợp số thập phân có số "0" sau dấu ","
Mong các Anh chị sửa lại dùm em đoạn code, em cám ơn nhiều lắm !

Trường hợp này vẫn chưa thỏa đáng: A1 = H.T.V 9 nếu ta dùng hàm CtoN(A1,".") sẽ báo lỗi #VALUE.
 
Nhờ Ban Quan Trị, sửa lại đoạn code trong <Những "Tuyệt Chiêu" trong Excel> Bài 28: Trích xuất dữ liệu số trong 1 chuỗi bằng VBA (link : http://www.giaiphapexcel.com/forum/showthread.php?14768-Những-tuyệt-chiêu-trong-Excel&p=114335#post114335)
VD : Em cần lấy số thứ 3 (tức: 5,01) trong chuỗi sau ở ô A1: 12,01 - 7 = 5,01 . Em dùng hàm CtoNPlus(A1;3;","), thì kết quả nhận được là: 5,1 .Hàm CtoN cũng tương tự.
Đoạn code đó không đúng cho trường hợp số thập phân có số "0" sau dấu ","
Mong các Anh chị sửa lại dùm em đoạn code, em cám ơn nhiều lắm !
Trường hợp này vẫn chưa thỏa đáng: A1 = H.T.V 9 nếu ta dùng hàm CtoN(A1,".") sẽ báo lỗi #VALUE.

Do không lường trước được mọi trường hợp nên phát sinh lỗi. Xin được sửa lại như file đính kèm.
Nhờ mọi người test hộ.
Xin cám ơn.
 

File đính kèm

  • CtoN.xls
    46.5 KB · Đọc: 26
vô tình gõ thêm ký tự này thì báo lỗi sư phụ ơi
Với cấu trúc dữ liệu thông thường:
Dấu chấm sẽ là 1 trong 3 trường hợp:
- là dấu chấm thập phân (2 bên là số)
- Là dấu chấm viết tắt (bên trái là ký tự chữ, bên phải là 1 ký tự chữ hoặc khoảng trắng)
- Là dấu chấm câu (bên trái là ký tự chữ, bên phải là khoảng trắng hoặc hết chuỗi)

Vậy thì không có trường hợp V.N.D.1+12.05
Mà sẽ là V.N.D. 1+12.05

Trừ khi cố tình hoặc chấm phẩy không kèm khoảng trắng như Thương.
 
Nói thì nói vậy, chứ cũng có thể sửa. Chỉ e rằng mỗi người nhập liệu sai 1 cách khác nhau thì chẳng thánh nào sửa hết.

Dự phòng cho trường hợp của Thương là sau dấu chấm câu hoặc sau dấu chấm viết tắt cuối cùng không có khoảng trắng.
Dự phòng thêm dấu chấm đặt vô cớ ở đầu câu.
 

File đính kèm

  • CtoN.rar
    13.4 KB · Đọc: 23
Chào tranthanhphong. Quả là bạn quá siêu trong lĩnh vực excel. Mình rất lờ mờ trong lĩnh vực excel, chỉ biết nhập dữ liệu, cộng trừ nhân chia chút đỉnh chứ chưa biết sử dụng các hàm phức tạp. Nhưng hiện nay mình bị một vấn đề là nhập thường bị hiện các dữ liệu có sẵn, khi đánh tựa mới vào thì hiện lên rất dài dòng. Vì dụ phía trên có tựa VUI HỌC TOÁN, khi mình nhập VỤ BÍ ẨN, thì lập tức trong cell nhập hiện lên VUỤ, đôi khi làm nhiều qúa, không kiểm tra hết, khi nhìn thấy lại rất khó chịu. Mong bạn hướng dẫn cho mình với nha. Cảm ơn bạn rất nhiều. Chúc mọi người một tuần vui vẻ và làm việc hiệu quả.
 
Chào tranthanhphong. Quả là bạn quá siêu trong lĩnh vực excel. Mình rất lờ mờ trong lĩnh vực excel, chỉ biết nhập dữ liệu, cộng trừ nhân chia chút đỉnh chứ chưa biết sử dụng các hàm phức tạp. Nhưng hiện nay mình bị một vấn đề là nhập thường bị hiện các dữ liệu có sẵn, khi đánh tựa mới vào thì hiện lên rất dài dòng. Vì dụ phía trên có tựa VUI HỌC TOÁN, khi mình nhập VỤ BÍ ẨN, thì lập tức trong cell nhập hiện lên VUỤ, đôi khi làm nhiều qúa, không kiểm tra hết, khi nhìn thấy lại rất khó chịu. Mong bạn hướng dẫn cho mình với nha. Cảm ơn bạn rất nhiều. Chúc mọi người một tuần vui vẻ và làm việc hiệu quả.
- Trên Excel 2007, 2010: Chọn Excel Options, chọn Advanced và bỏ tùy chọn Enable AutoComplete for cell values --> OK.
- Trên Excel 2003: Chọn Tools\Options, tùy chọn này nằm tại tab Edit.
 
- Trên Excel 2007, 2010: Chọn Excel Options, chọn Advanced và bỏ tùy chọn Enable AutoComplete for cell values --> OK.
- Trên Excel 2003: Chọn Tools\Options, tùy chọn này nằm tại tab Edit.

Chào Nghĩa Phúc, mình đã làm theo bạn hướng dẫn nhưng nó lại không thể kiểm soát những chi tiết đã có, trùng lặp. Đúng là nan giải. Chưa hết, mình nhập bằng font Unicode, đôi khi nó cứ tự động hoa các ký tự nguyên âm kể cả ngay trong dòng. Thật là khổ. Chúc mọi người cuối tuần thật vui.
 
Bạn vietthoa có góp ý như sau:


Thú thật tôi không hiểu lắm.
Đã:
3/protection locked chon hidden rồi ok
Rồi còn tiếp:
4/nháy lock cell
Là sao?

Còn câu này:
5/protect sheet vào password đã song
Không hiểu bạn muốn nói điều gì...
Tôi thấy chiêu số 9 này như sau:
Trước khi thực hiện bước: "Việc cuối cùng là Protect bảng tính: Chọn Home trên Ribbon, nhấn vào Format trong nhóm Cells, rồi nhấn vào Protect Sheet...; hoặc chọn Review trên Ribbon, rồi nhấn vàoProtect Sheet [E2003: Tools | Protection | Protect Worksheet]"
N
ếu ta chọn tất cả bảng tính thì sau đó toàn bộ bảng tính bị khóa (kể cả những ô không chứa công thức), còn nếu ta chọn ô nào thì nó chỉ có tác cho ô đó mà thôi. Bạn cho hỏi có đúng như vậy không? hay là tôi làm sai chỗ nào vậy?
 
Tôi thấy chiêu số 9 này như sau:
Trước khi thực hiện bước: "Việc cuối cùng là Protect bảng tính: Chọn Home trên Ribbon, nhấn vào Format trong nhóm Cells, rồi nhấn vào Protect Sheet...; hoặc chọn Review trên Ribbon, rồi nhấn vàoProtect Sheet [E2003: Tools | Protection | Protect Worksheet]"
N
ếu ta chọn tất cả bảng tính thì sau đó toàn bộ bảng tính bị khóa (kể cả những ô không chứa công thức), còn nếu ta chọn ô nào thì nó chỉ có tác cho ô đó mà thôi. Bạn cho hỏi có đúng như vậy không? hay là tôi làm sai chỗ nào vậy?

Không phải chọn hay không chọn ô hay khối ô, mà chỉ những ô nào có định dạng là Locked mới bị khóa.

Vì thế, trước khi khóa sheet, mặc định là ô nào cũng được locked, nếu bạn muốn vùng nào không bị khóa thì bạn chọn vùng đó và Format Cells, chọn thẻ Protection, bỏ chọn Locked, rồi mới khóa sheet.
 
Chiêu thứ 7:
Tạo chỉ mục tự động bằng cách sử dụng VBA
Sau khi tạo chỉ mục, tôi bấm vào liên kết "Back to Index" thì gặp lỗi "Reference is not valid"
Các Bác cho em hỏi với, về chiêu thứ 7: Tạo chỉ mục cho các sheet.
Em copy nguyên phần code của chiêu thứ 7 về để thực hiện tạo chỉ mục.
Thì, chiều xuôi: từ sheet Index tìm đến các sheet khác thì OK. Nhưng back to Index thì không được.
Em đến ô A1 của sheet Index này và đặt tên index cho ô này thì chức năng back to Index mới hoạt động để trở về sheet index từ các sheet khác được. Đến đây coi như xong.
Bây giờ em muốn thay đổi tên, index thành Mục lục chẳng hạn, bằng cách: sửa tất cả chỗ nào có từ index trong phần code thành Mục lục. Thì chương trình không hoạt động được.
Em mới tập tẹ nghiên cứu, nhờ các bác giúp em với, (chỉ ra lỗi sai của em).
Rất mong được sự hướng dẫn của các bác. Thanks
 

File đính kèm

  • chieu7.rar
    6.3 KB · Đọc: 14
Lần chỉnh sửa cuối:
Bạn ơi! Cho mình hỏi về cái chiêu thứ 10...sử dụng conditional formatting để tìm dữ liệu trùng! Cách của bạn là highlight các dữ liệu trùng...còn mình muốn xuất ra các dữ liệu trùng thì sao hả bạn?
 
Các Bác cho em hỏi với, về chiêu thứ 7: Tạo chỉ mục cho các sheet.
Em copy nguyên phần code của chiêu thứ 7 về để thực hiện tạo chỉ mục.
Thì, chiều xuôi: từ sheet Index tìm đến các sheet khác thì OK. Nhưng back to Index thì không được.
Em đến ô A1 của sheet Index này và đặt tên index cho ô này thì chức năng back to Index mới hoạt động để trở về sheet index từ các sheet khác được. Đến đây coi như xong.
Bây giờ em muốn thay đổi tên, index thành Mục lục chẳng hạn, bằng cách: sửa tất cả chỗ nào có từ index trong phần code thành Mục lục. Thì chương trình không hoạt động được.
Em mới tập tẹ nghiên cứu, nhờ các bác giúp em với, (chỉ ra lỗi sai của em).
Rất mong được sự hướng dẫn của các bác. Thanks

1. Bạn sửa tất cả các chỗ wSheet.ML thành wSheet.Name thì sẽ chạy
2. Có thể không cần tạo name nếu thay name bằng địa chỉ ô có kèm theo tên sheet trong subaddress:

PHP:
Private Sub Worksheet_Activate()
  Dim wSheet As Worksheet
  Dim lCount As Long
  lCount = 1
      
With Me
   .Columns(1).ClearContents
   .Cells(1, 1) = "ML"
   
End With

For Each wSheet In Worksheets
   If wSheet.Name <> Me.Name Then
     lCount = lCount + 1
     With wSheet
         .Hyperlinks.Add Anchor:=.Range("A1"), Address:="", SubAddress:= _
          "ML!A1", TextToDisplay:="Back to ML"
     End With
     Me.Hyperlinks.Add Anchor:=Me.Cells(lCount, 1), Address:="", SubAddress:= _
     wSheet.Name & "!A1", TextToDisplay:=wSheet.Name
  End If
Next wSheet
End Sub
 
Xin chào mọi người,

Như đã từng nói cách đây 2 ngày trước, kyo sẽ làm tiếp dự án này từ chiêu thứ 44 trở đi và sẽ cố gắng đưa nó đến kết thúc. Dù vậy trong quá trình làm sẽ có nhiều sai sót, rất mong được mọi người góp ý thêm và thảo luận để đưa dự án này trở nên tốt đẹp nhất có thể.

Mở đầu, kyo đã đưa lên chiêu số 44.

Kyo.
 
bạn có thể làm thành 1 file PDF hay File word để mọi người cùng tham khảo nghiên cứu được k?
 
Web KT
Back
Top Bottom