Hàm if trong if (1 người xem)

Liên hệ QC

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

TrayNhok

Thành viên mới
Tham gia
11/12/10
Bài viết
20
Được thích
0
Chào mọi người mình cần hỏi về hàm IF trong IF của VBA. Mình có đoạn code bên dưới. Mọi người kiểm tra giúp.
Với giá trị A <1000 thì dùng 1 công thức, với giá trị 1000<A<10000 sẽ dùng 1 công thức, còn lại sẽ dùng 1 công thức.
Mã:
Function DT_THEPBUOC(A As Long) As DoubleIf A < 1000 Then
    DT_THEPBUOC = (100 / (Right(A, 2) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
Else
    If 1000 < A < 10000 Then
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 1) * Left(A, 1) / 100
    Else
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
    End If
End If
End Function
 
Lần chỉnh sửa cuối:
Chào mọi người mình cần hỏi về hàm IF trong IF của VBA. Mình có đoạn code bên dưới. Mọi người kiểm tra giúp.
Với giá trị A <1000 thì dùng 1 công thức, với giá trị 1000<A<10000 sẽ dùng 1 công thức, còn lại sẽ dùng 1 công thức.
Mã:
Function DT_THEPBUOC(A As Long) As DoubleIf A < 1000 Then
    DT_THEPBUOC = (100 / (Right(A, 2) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
Else
    If 1000 < A < 10000 Then
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 1) * Left(A, 1) / 100
    Else
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
    End If
End If
End Function
Tại sao bạn ko tự kiểm tra với số liệu của mình? tại sao ko dugnf ElseIf luôn mà còn lồng if..end if?
 
Upvote 0
Mình đã kiểm tra giá trị rồi nhưng không đúng
Bạn có thể giúp mình dùng Else If như thế nào không?
 
Upvote 0
Chào mọi người mình cần hỏi về hàm IF trong IF của VBA. Mình có đoạn code bên dưới. Mọi người kiểm tra giúp.
Với giá trị A <1000 thì dùng 1 công thức, với giá trị 1000<A<10000 sẽ dùng 1 công thức, còn lại sẽ dùng 1 công thức.
Thử cái này ...
Mã:
Function DT_THEPBUOC(A As Long) As Double
If A < 1000 Then
    DT_THEPBUOC = (100 / (Right(A, 2) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
ElseIf A < 10000 Then
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 1) * Left(A, 1) / 100
Else
        DT_THEPBUOC = (100 / (Right(A, 3) / 10)) * 3.14 / 4 * Left(A, 2) * Left(A, 2) / 100
End If
End Function
 
Upvote 0
Vậy mà thử quài không được.
Ví dụ như mình cần thêm một công thức với một điều kiện khác vẫn ElseIf luôn hay sao bạn?
Mình hỏi thêm về cách hiển thị tí.
Mình đánh số 1070 thì cần hiển thị Ø10a70, nhưng 8200 thì cần hiển thị Ø8a200.
Những trường hợp khác như 10200→Ø10a200, 890→Ø8a90 thì mình đã giải quyết được.
 
Upvote 0
Web KT

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

Back
Top Bottom