פונקציית סיכום של Excel ו-VBA

עובדת על המחשב הנייד שלה בבית קפה

קרדיט תמונה: mavoimages/iStock/Getty Images

למידה כיצד להשתמש בפונקציית "Roundup" של Excel משפת התכנות המובנית שלה VBA, או Visual Basic for Applications, עוזרת לך להפעיל כל פונקציה של Excel מ-VBA. מיומנות זו שימושית מכיוון של-Excel יש פונקציות רבות שאין ל-VBA, ושייתכן שתצטרך ליישם מתוכנית VBA. שים לב שתכונת ה-VBA המאפשרת לך להתחבר לפונקציית "Roundup" לא תתריע על תחביר או ארגומנט שגויים, כפי שהיא הייתה עושה בעת שימוש בממשק גליון העבודה הסטנדרטי.

מַטָרָה

הפונקציה "Roundup" של Excel מעגלת מספר כלפי מעלה למספר הספרות שאתה מציין. לדוגמה, הפעלת "Roundup (2.2, 0)" אומרת לאקסל שאתה רוצה שהוא יעגל את המספר 2.2 עד למספר השלם הבא. ה-"0" בארגומנט השני אומר ל-Excel שאתה לא רוצה שום ספרה אחרי הנקודה העשרונית, וזה שווה ערך לאמירה שאתה רוצה תשובה שלמה.

סרטון היום

פונקציית VBA עגול

ל-VBA אין פונקציית "Roundup" מובנית. הפונקציה הקרובה ביותר שיש לה היא פונקציית ה-"Round", שמתעגלת למעלה או למטה, תלוי אם ספרת הסיום במספר שאתה מעגל גדול מ-5 או פחות. לדוגמה, הקלדת "Round (2.2, 0)" בחלון "מיידי" של VBA מביאה ל-2, במקום ה-3 שפונקציית ה-"Roundup" של Excel תעגל כלפי מעלה.

נכס "נוסחה".

למרות של-VBA אין פונקציית "Roundup" משלה, היא יכולה להשתמש בפונקציית "Roundup" של Excel. כדי להורות ל-VBA לעשות זאת, הגדר את המאפיין "Formula" של האובייקט הווירטואלי "Range" לפונקציה "Roundup". הדוגמה הבאה מראה לך כיצד לעשות זאת. פתח את סביבת הפיתוח של VBA על ידי לחיצה על "Alt" ו- "F11" בו זמנית מתוך Excel. לחץ על העכבר בחלון "מיידי", ולאחר מכן הקלד את ההצהרה הבאה: "טווח ("A1"). נוסחה = "=Roundup (2.2, 0)". חזור ל-Excel באמצעות הקש "Alt-F11" שתוארה זה עתה. תראה את התוצאה "3" בתא A1, מה שמציין שהמשפט שלך החיל בהצלחה את פונקציית ה"Roundup" של Excel.

דוגמה אינטראקטיבית

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

Public Sub roundUpANumber() Dim a1, a2, s a1 = CDbl (InputBox("הזן את המספר שברצונך לעגל")) a2 = CInt (InputBox("הזן את מספר העשרונים אליו תרצה לעגל את המספר שזה עתה הזנת.")) s = "=Roundup(" & a1 & "," & a2 & ")" Range("A1").Formula = s Range("A1") .Calculate MsgBox (Range("A1").Value) End תַת

הפעל את התוכנית על ידי לחיצה על אחת מהמשפטים שלה, ולאחר מכן לחיצה על הפקודה "הפעלה" בתפריט "הפעלה". כאשר Excel יבקש ממך את הארגומנטים של הפונקציה, הקלד אותם והקש "Enter". התוכנית שלך תציג את התוצאה של הפונקציה "Roundup" עבור הארגומנטים שהזנת.