סבב VBA | כיצד להשתמש בפונקציה עגולה של VBA ב- Excel?

פונקציה עגולה של VBA ב- Excel

פונקציית עגול ב- VBA היא פונקציה מתמטית שכפי שהשם עצמו מרמז שהיא מעיגלת את המספר הנתון כלפי מעלה או מטה אותו למערכת הספציפית של המקומות העשרוניים שצוינה על ידי המשתמש, פונקציה זו משתמשת בהיגיון של עגול אפילו מה שאומר שהוא לוקח 5 בתור התייחסות וכל מספר עם ספרה אחרונה אחרי העשרוני הוא מתחת ל 5 ואז הוא עגול למטה ולהיפך.

ניתן לעגל מספר עד עשרוני דו ספרתי, עשרוני תלת ספרתי, או ללא עשרון בכלל. לדוגמא, אם יש לך את המספר 5.8697. אם תעגל את המספר לעשרון דו ספרתי זה יהיה 5.87 אם תעגל לשלוש ספרות אז הוא יעגל ל 5.870, אם תרצה לעגל לאפס אז הוא יהיה 6.-

במספרים בנקאיים, כל המקומות העשרוניים שהם פחות מ 0.5 יעוגלו כלפי מטה לערך המספר השלם הקודם וכל המקומות העשרוניים הגדולים או שווים ל 0.5 יעגלו כלפי מעלה לערך המספר השלם הבא.

אני מקווה שהשתמשת בפונקציה ROUND בגליון העבודה. גם ב- VBA אנו יכולים להשתמש בפונקציה זו אך יש לנו הבדל בפונקציות אלה. נראה את ההבדל בין שתי הפונקציות בהמשך מאמר זה.

תחביר

התבונן בתחביר של פונקציית העגול.

מספר: זה המספר שאנו מנסים לעגל.

[מספר ספרות אחרי עשרוני]: כמה ספרות אתה צריך אחרי הערך העשרוני.

דוגמאות

אתה יכול להוריד תבנית Excel זו לפונקציה VBA עגולה כאן - תבנית Excel לפונקציה VBA עגולה

נניח שיש לך את המספר 4.534 ואתה רוצה לעגל שתי ספרות.

בצע את השלבים הבאים.

שלב 1: הכריז על המשתנה כ- Variant.

קוד:

 Sub Round_Example1 () Dim K כמו Variant End Sub 

שלב 2: עבור משתנה זה " k " הקצה את הערך באמצעות פונקציית ROUND.

קוד:

 Sub Round_Example1 () Dim K כמו Variant K = Round (End Sub 

שלב 3: המספר אינו אלא מה המספר שאנו מנסים לעגל, במקרה זה המספר הוא 4.534

קוד:

 Sub Round_Example1 () Dim K כמו Variant K = Round (4.534, Sub Sub 

שלב 4: כמה ספרות עלינו לעגל, במקרה זה עלינו לעגל ל -2 ספרות .

קוד:

 Sub Round_Example1 () Dim K כמו Variant K = Round (4.534, 2) Sub Sub 

שלב 5: כעת הראה את המשתנה "k" בתיבת ההודעות VBA.

קוד:

 Sub Round_Example1 () Dim K כמו Variant K = Round (4.534, 2) MsgBox K Sub Sub 

הפעל את הקוד הזה ותראה מה אנחנו מקבלים.

קיבלנו את התוצאה כ -4.53 כאשר עגלנו ל -2 ספרות.

עכשיו אשנה את המספר מ -4.534 ל -4.535 . תראה מה קורה עכשיו.

קוד:

 Sub Round_Example1 () Dim K כמו Variant K = Round (4.535, 2) MsgBox K Sub Sub 

כעת הפעל את הקוד ובדוק מה התוצאה.

קיבלנו את התוצאה כ -4.54 עשרונית גבוהה יותר מהערך הקודם 4.53. הסיבה לכך היא שבדוגמא זו סיפקנו את המספר כ -4.535, אז אחרי המספר 3 המספר הבא הוא 5 אז הוא מעוגל למספר הבא אז 3 הופך ל -4.

כעת אספק את המספר כ- 2.452678 ואנסה לעגל ל -3 ספרות.

קוד:

 Sub Round_Example2 () Dim K כמו Variant K = Round (2.452678, 3) MsgBox K Sub Sub 

הפעל קוד זה כדי לראות את התוצאה.

התוצאה היא 2.453 .

2.45 2678 כאן המספרים אחרי המקום העשרוני השני הם 2678. אחרי המספר 2, המספר הבא הוא 6 שגדול או שווה ל 5 ולכן הוא מעוגל כלפי מעלה למספר העשרוני הבא.

עכשיו אשתמש באותו מספר כדי לעגל לאפס ולראות מה קורה.

קוד:

 Sub Round_Example3 () Dim K כמו Variant K = Round (2.452678, 0) MsgBox K Sub Sub 

הפעל את הקוד ובדוק מה אנו מקבלים.

מכיוון שהשתמשתי בסיבוב לאפס קיבלנו את התוצאה כ -2.

הסיבה שקיבלנו את התוצאה כ -2 מכיוון שכאן המספר הראשון העשרוני הוא 4 שהוא פחות מ 0.5 ולכן הוא מעוגל למטה.

ההבדל בין פונקציה Excel ו- VBA ROUND

יש בעיקר 2 הבדלים.

מספר 1 - תחביר של שתי הפונקציות:

אם אתה מסתכל על התחביר של שתי הפונקציות יש לנו הבדל כאן.

תחביר עגול של Excel: עגול (מספר, מספר ספרות אחרי עשרוני)
תחביר עגול של VBA: עגול (מספר, [מספר ספרות אחרי עשרוני])

ב- Excel שני הטיעונים הם חובה אך ב VBA טיעון שני הוא לא חובה.

ב- VBA אם אתה מתעלם מהארגומנט השני זה לוקח את טיעון ברירת המחדל כאפס ולכן נקבל את המספר השלם.

מס '2 - תוצאות:

התוצאה הניתנת על ידי שתי פונקציות אלה שונה. להלן מספר דוגמאות