Các chức năng Round, RoundUp và RoundDown của VBA

Vòng VBA

Hàm làm tròn VBA làm tròn số thành một số chữ số được chỉ định.

Cú pháp của hàm vòng VBA

Cú pháp của VBA Round Function là:

Tròn (Biểu thức, [Dấu_mặt_tỷ_phẩm]) trong đó:

  • Biểu thức - Số làm tròn.
  • Decimal_places (Không bắt buộc) - Một số nguyên xác định số chữ số thập phân được làm tròn. Giá trị phải lớn hơn hoặc bằng 0 (> = 0). Nếu để trống, giá trị mặc định là 0 được sử dụng, có nghĩa là hàm làm tròn đến số nguyên gần nhất.

Vì vậy, hãy xem một ví dụ để bạn có thể thấy cách hoạt động của hàm VBA Round, làm tròn đến 1 chữ số thập phân:

12345 Vòng phụ 1 ()Msgbox Round (7.25, 1)Kết thúc Sub

MessageBox kết quả:

VBA vòng một biến

Trong ví dụ trên, chúng tôi đã nhập số được làm tròn trực tiếp vào hàm, tuy nhiên, thay vào đó, bạn sẽ làm tròn một biến. Sau đây là một ví dụ sử dụng một biến để thay thế:

Lưu ý: Chúng tôi sử dụng kiểu biến Double để lưu trữ các giá trị thập phân.

123456789 Vòng phụUsingVariable ()Giảm số lượng đơn vị xuống gấp đôiunitcount = 7.25MsgBox "Giá trị là" & Round (đơn vị tính, 1)Kết thúc Sub

Kết quả là:

Kết quả làm tròn VBA

Số thực tế Số vị trí thập phân Kết quả
7.25 0 7
7.25 1 7.2
7.25 2 7.25
-7.25 1 -7.2
-7.25 2 -7.25

Bạn mệt mỏi với việc tìm kiếm ví dụ về mã VBA? Hãy thử AutoMacro!

Giá trị ô tròn VBA

Bạn cũng có thể làm tròn giá trị ô trực tiếp trong VBA:

123 Sub RoundCell ()Phạm vi ("A1"). Giá trị = Vòng (Phạm vi ("A1"). Giá trị, 2)Kết thúc Sub

Hàm RoundUp VBA

Giả sử bạn muốn làm tròn một số bằng VBA. Không có hàm tương đương VBA RoundUp được tích hợp sẵn, thay vào đó, những gì bạn có thể làm là gọi hàm Excel RoundUp Worksheet từ mã VBA của bạn:

1 roundupUnitcount = Application.WorksheetFunction.RoundUp (số lượng đơn vị, 3)

Các hàm trang tính của Excel có sẵn để sử dụng trong VBA, thông qua việc sử dụng WorksheetFunction sự vật. Các hàm trang tính duy nhất mà bạn không thể gọi, là những hàm đã có sẵn VBA tương đương.

Nhắc nhở về cú pháp của Hàm RoundUp Trang tính Excel:

ROUNDUP (Số, Chữ số) trong đó:

  • Số - Số bạn muốn làm tròn.
  • Chữ số - Số chữ số mà bạn muốn làm tròn số.

Vì vậy, hãy xem một ví dụ để bạn có thể thấy cách truy cập chức năng RoundUp Worksheet trong mã VBA của bạn:

12345678910111213 Sub RoundUp ()Giảm số lượng đơn vị thành đôiDim roundupUnitcount As Doubleunitcount = 7.075711roundupUnitcount = Application.WorksheetFunction.RoundUp (số lượng đơn vị, 4)MsgBox "Giá trị là" & roundupUnitcountKết thúc Sub

Kết quả là:

Làm tròn đến số nguyên gần nhất

Bạn có thể làm tròn đến số nguyên gần nhất bằng cách chỉ định 0 là số chữ số thập phân:

12345 Sub RoundUpWhole ()MsgBox Application.WorksheetFunction.RoundUp (7.1, 0)Kết thúc Sub

Kết quả được giao:

Lập trình VBA | Code Generator làm việc cho bạn!

Kết quả chức năng RoundUp

Số thực tế Chữ số Kết quả
7.075711 0 8
7.075711 1 7.1
7.075711 2 7.08
7.075711 3 7.076
7.075711 -1 10
7.075711 -2 100
7.075711 -3 1000

Hàm RoundDown VBA

Giả sử bạn muốn làm tròn một số bằng VBA. Cũng không có hàm tương đương VBA RoundDown được tích hợp sẵn, thay vào đó, một lần nữa, những gì bạn sẽ làm là gọi hàm Excel RoundDown Worksheet từ mã VBA của bạn.

Nhắc nhở về cú pháp của Hàm RoundDown Bảng tính trong Excel:

ROUNDDOWN (Số, Chữ số) trong đó:

• Số - Số bạn muốn làm tròn xuống.
• Chữ số - Số chữ số mà bạn muốn làm tròn số.

Vì vậy, hãy xem một ví dụ để bạn có thể thấy cách truy cập hàm RoundDown Worksheet trong mã VBA của bạn:

12345678910111213 Sub RoundDown ()Giảm số lượng đơn vị thành đôiGiảm vòng tua xuống Số đơn vị tăng gấp đôiunitcount = 5.225193rounddownUnitcount = Application.WorksheetFunction.RoundDown (số lượng đơn vị, 4)MsgBox "Giá trị là" & rounddownUnitcountKết thúc Sub

Kết quả là:

Làm tròn đến số nguyên gần nhất

Bạn có thể làm tròn xuống số nguyên gần nhất bằng cách chỉ định 0 là số chữ số thập phân:

12345 Sub RoundDownWhole ()MsgBox Application.WorksheetFunction.RoundDown (7.8, 0)Kết thúc Sub

Kết quả là:

Kết quả chức năng RoundDown

Số thực tế Chữ số Kết quả
5.225193 0 5
5.225193 1 5.2
5.225193 2 5.22
5.225193 3 5.225
5.225193 -1 0
5.225193 -2 0
5.225193 -3 0

Lập trình VBA | Code Generator làm việc cho bạn!

Các chức năng làm tròn VBA khác

VBA trần - Vòng lên đến một ý nghĩa cụ thể

VBA không có hàm Ceiling.Math tương đương, vì vậy nếu bạn muốn làm tròn một số lên đến số nguyên gần nhất hoặc đến bội số có nghĩa được chỉ định gần nhất, thì bạn có thể gọi hàm trang tính Excel’s Ceiling.Math từ mã VBA của mình.

Nhắc nhở về cú pháp của hàm Ceiling.Math trong bảng tính Excel:

CEILING.MATH (Số, [Ý nghĩa], [Chế độ]) trong đó:

  • Số - Số bạn muốn làm tròn.
  • Ý nghĩa (Không bắt buộc) - Bội số mà bạn muốn số của mình được làm tròn đến.
  • Chế độ (Không bắt buộc) - Kiểm soát xem các số âm được làm tròn về phía trước hay đi từ số 0.

Vì vậy, hãy xem một ví dụ để bạn có thể biết cách truy cập hàm Ceiling.Math Worksheet trong mã VBA của bạn:

12345678910111213 Sub RoundUpToSignificance ()Giảm số lượng đơn vị thành đôiLàm mờ trần nhàUnitcount As Doubleunitcount = 4,1221baremathUnitcount = Application.WorksheetFunction.Ceiling_Math (số lượng đơn vị, 5)MsgBox "Giá trị là" & baremathUnitcountKết thúc Sub

Kết quả là:

VBA RoundUp đến các kết quả có ý nghĩa cụ thể

Số thực tế Ý nghĩa Chế độ Kết quả
4.1221 5
4.1221 3 6
4.1221 50 50
-4.1221 3 -3
-4.1221 3 -1 -6

Tầng VBA - Vòng quay đến một ý nghĩa cụ thể

VBA cũng không có chức năng Floor.Math tương đương. Tuy nhiên, một lần nữa, nếu bạn muốn làm tròn một số xuống số nguyên gần nhất hoặc đến bội số có nghĩa được chỉ định gần nhất, thì bạn có thể gọi hàm trang tính Excel’s Floor.Math từ VBA.

Nhắc nhở về cú pháp của hàm Excel Worksheet Floor.Math:

FLOOR.MATH (Số, [Ý nghĩa], [Chế độ]) trong đó:
• Số - Số bạn muốn làm tròn xuống.
• Ý nghĩa (Không bắt buộc) - Bội số mà bạn muốn số của mình được làm tròn đến.
• Chế độ (Không bắt buộc) - Kiểm soát xem các số âm được làm tròn về phía trước hay đi từ số 0.

Vì vậy, hãy xem xét một ví dụ để bạn có thể biết cách truy cập chức năng Trang tính Floor.Math trong mã VBA của bạn:

1234567891011 Sub RoundDownToSignificance ()Giảm số lượng đơn vị thành đôiDim floormathUnitcount As Doubleunitcount = 4,55555559floormathUnitcount = Application.WorksheetFunction.Floor_Math (unitcount, 2)MsgBox "Giá trị là" & floormathUnitcountKết thúc Sub

Kết quả là:

VBA RoundDown đến các kết quả có ý nghĩa cụ thể

Số thực tế Ý nghĩa Chế độ Kết quả
4.55555559 4
4.55555559 3 3
4.55555559 50 0
-4.55555559 3 -6
-4.55555559 3 -1 -3

Bạn sẽ giúp sự phát triển của trang web, chia sẻ trang web với bạn bè

wave wave wave wave wave