Hàm do người dùng Excel VBA xác định

Hàm do người dùng Excel VBA xác định

Chào bạn,

Tôi đang cố gắng tạo một hàm =CALC(x,y,z), trong đó x và y đều là số, z là văn bản. Tôi đang cố gắng lấy z làm phép cộng hoặc phép nhân hoặc phép chia, sau đó sẽ thực hiện các phép tính trên x và y tương ứng. Tôi đã thử sử dụng cả If/Then và Select/Case tương ứng nhưng đều không hiệu quả. Tôi không thể tìm ra điều gì đã xảy ra trong mã của mình bên dưới ...

Hàm CALC(x là số nguyên, y là số nguyên, z là chuỗi)

Kết quả mờ Dưới dạng số nguyên, z Dưới dạng chuỗi, x Dưới dạng số nguyên, y Dưới dạng số nguyên

Chọn trường hợp z
Trường hợp là = "thêm"
kết quả = x + y

Trường hợp là = "nhiều"
kết quả = x * y

Trường hợp là = "div"
kết quả = x/y
Kết thúc chọn

CALC = kết quả

Chức năng kết thúc

***Bài đăng được người điều hành chuyển đến danh mục diễn đàn thích hợp.***




Trả lời:

Bạn không cần phải khai báo lại z, x và y vì bạn đã chuyển chúng cho hàm rồi. Ngoài ra, bạn không nên khai báo kết quả dưới dạng số nguyên, vì số nguyên không thể chứa giá trị thập phân và bạn có thể nhận được giá trị thập phân khi chia.

Hãy thử chỉ khai báo nó, nó sẽ biến nó thành một biến thể.

Đây là mã được sửa đổi:

Hàm CALC(x là số nguyên, y là số nguyên, z là chuỗi)

Kết quả mờ

Chọn trường hợp z
Trường hợp là = "thêm"
kết quả = x + y
Trường hợp là = "nhiều"
kết quả = x * y
Trường hợp là = "div"
kết quả = x/y
Kết thúc chọn

CALC = kết quả

Chức năng kết thúc



Trả lời:

JYCHNG

re: chức năng do người dùng thiết kế

Ba câu trả lời phải tốt hơn 2?

Kiểu dữ liệu gốc cho các số trên trang tính là "double".

Không nên sử dụng kiểu dữ liệu số nguyên trong phép chia.

Vì thế...

Hàm công cộng CALC(x As Double, y As Double, z As String) As Double
Kết quả mờ Như đôi

Chọn trường hợp z
Trường hợp là = "thêm"
kết quả = x + y
Trường hợp là = "nhiều"
kết quả = x * y
Trường hợp là = "div"
kết quả = x/y
Kết thúc chọn
CALC = kết quả

Chức năng kết thúc
'---

Nó được gọi từ bảng tính như thế này... =CALC(2,3,"div")

>'---
Jim Cone
Portland, Oregon Hoa Kỳ
https://goo.gl/IUQUN2 (Dropbox) >(bổ trợ và sổ làm việc excel miễn phí và thương mại)

Comments

Popular posts from this blog

Macro Đã bật Excel bị hỏng khi sử dụng Excel> Chia sẻ> Email> Gửi dưới dạng tệp đính kèm

Microsoft excel - Tạo công thức trong đó dữ liệu từ các tab / Bảng tính khác nhau có thể được đồng bộ hóa dựa trên một ô trên bảng tính

Làm mới danh sách SharePoint đã xuất không thành công trong Excel 2013 khi hoạt động với Excel 2010