Hàm vbaSWITCH() thay cho IF() & CHOOSE()! (1 người xem)

  • Thread starter Thread starter SA_DQ
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

SA_DQ

/(hông là gì!
Thành viên danh dự
Tham gia
8/6/06
Bài viết
14,605
Được thích
22,925
Nghề nghiệp
U80
Với hàm tự tạo này chúng ta sẽ vượt qua khó khăn về giới hạn của hàm IF() với số 7 & hàm CHOOSE() với 30 thông số biến
Hàm có thể nhận không chỉ là số như CHOOSE(), mà có thể nhận biến dạng chuỗi
Mã:
[B]Function vbaSWITCH(St As Variant, Loai As String)[/B]
 Select Case UCase$(Loai)
 Case "S"
    vbaSWITCH = Switch(St < 3, "3", St < 6, "6", St < 9, "9", St < 12, "12", St < 15, "15" _
    , St < 18, "18", St < 21, "21", St < 24, "24", St < 27, "27", St < 30, "30" _
    , St < 33, "33", St < 36, "36", St < 39, "39", St < 42, "42", St < 45, "45" _
    , St < 48, "48", St < 51, "51", St < 54, "54", St < 57, "57", St < 60, "60", _
    St < 63, "63", St < 66, "66", St < 69, "69", St < 72, "72", St < 75, "75" _
    , St < 78, "78", St < 81, "81", St < 84, "84", St < 87, "87", St < 90, "90" _
   , St < 93, "93", St < 96, "96", St < 99, "99")
 
 Case "C" 
 
 Case Else
 
 End Select 
[B]End Function[/B]
 
Lần chỉnh sửa cuối:
Với hàm tự tạo này chúng ta sẽ vượt qua khó khăn về giới hạn của hàm IF() với số 7 & hàm CHOOSE() với 30 thông số biến
Hàm có thể nhận không chỉ là số như CHOOSE(), mà có thể nhận biến dạng chuỗi
Mã:
[B]Function vbaSWITCH(St As Variant, Loai As String)[/B]
 Select Case UCase$(Loai)
 Case "S"
    vbaSWITCH = Switch(St < 3, "3", St < 6, "6", St < 9, "9", St < 12, "12", St < 15, "15" _
    , St < 18, "18", St < 21, "21", St < 24, "24", St < 27, "27", St < 30, "30" _
    , St < 33, "33", St < 36, "36", St < 39, "39", St < 42, "42", St < 45, "45" _
    , St < 48, "48", St < 51, "51", St < 54, "54", St < 57, "57", St < 60, "60", _
    St < 63, "63", St < 66, "66", St < 69, "69", St < 72, "72", St < 75, "75" _
    , St < 78, "78", St < 81, "81", St < 84, "84", St < 87, "87", St < 90, "90" _
   , St < 93, "93", St < 96, "96", St < 99, "99")
 
 Case "C" 
 
 Case Else
 
 End Select 
[B]End Function[/B]

Hàm đó S là gì và C là gì bạn ơi
giải thích chút được không
 
Upvote 0
[Thongbao]Hàm đó S là gì và C là gì bạn ơi
giải thích chút được không[/Thongbao]

Hảm đó cần được cung cấp 2 tham biến; đó là
St có kiểu loại Variant, &
Loai có thuộc kiểu chuỗi;

'Loai' ta có thể cung cấp là 'S' hay 's'; "C" hay 'c' & bất kỳ kí tự nào bình thường khác.
Nhưng khi cung cấp cho nó 'S' hay 's', nó sẽ trả về cho ta kí số lớn hơn tương ứng với số ta cung cấp bỡi tham biến St

Còn hai vế sau bạn có thể tò mò & viết tiếp thử xem sao, lúc rỗi!
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom