אקסל חישוב עמודות
-
@ua אמר באקסל חישוב עמודות:
מהי "פונקציית מערך"?
פונקציית מערך או נוסחת מערך, היא פונקציה שמסוגלת לבצע פעולות על מספר מרובה של תאים בבת אחת, כגון עמודה או שורה ואפילו מטריצה (עמודות ושורות גם יחד), ולהחזיר גם היא מערך, דהיינו רצף של תאים.
ומדוע צריך ללחוץ Ctrl+Shift+Enter ולא אנטר רגיל?
זה סתם הרגל מגרסאות קודמות, בגרסאות 2019 וגם 365 לא צריך. אנטר רגיל מספיק.
תוכל להסביר איך הפונקציה שכתבת עובדת?
הפונקציה COUNTIF מבצעת ספירה מותנית, דהיינו ספירה של ערכים לפי תנאי.
הפרמטר הראשון הוא טווח תאים שבהם רוצים לחפש, והשני הוא מערך של ערכים שרוצים למצוא (ניתן כמובן להשתמש גם בערך יחיד)
השואל ביקש לספור את כל הערכים שמופיעים פעם אחת בלבד בטווח.
בדוגמא שהבאתי, אנו סופרים עבור כל ערך בטווח A2:A100 את מספר המופעים של אותו הערך בעצמו באותו הטווח, ובודקים:- אם התוצאה שווה ל-1, הוה אומר שהערך מופיע פעם אחת בלבד, ואז אנו סופרים אותו (מוסיפים 1 לסכום)
- אחרת, הוה אומר שהערך מופיע כמה פעמים (כי ברור שהוא מופיע לפחות פעם אחת), ואז אנו לא סופרים אותו (מוסיפים 0 לסכום)
הסכום שנתקבל הוא מספר כל הערכים שמופיעים פעם אחת בלבד, וזה התוצאה המבוקשת.
-
@odeddvir קודם כל יישר כח על הסברך הנעים בטוב טעם (כרגיל...)
-
ניסיתי באופיס 2019 (מעודכן) לא 365, ורק שלחצתי על:
Ctrl+Shift+Enter
זה עבד. לחיצה עלEnter
לבד נתן תוצאה0
.
בנוסף - הלחיצה הנ"ל הוסיפה סוגריים מסולסלות -{ }
מסביב לנוסחה, מה משמעותם ולמה הם נדרשים כאן בשונה מנוסחה רגילה?
אף פעם לא נתקלתי בזה, אשמח שתחכים אותי, אם תוכל.
-
הנוסחה הזו לא סופרת בכלל ערכים כפולים אלא מדלגת עליהם - השאלה היא, אולי כוונת השואל לספור פעם אחת ערכים כפולים? מסתבר לי שכך כוונתו, ולא להתעלם לגמרי מכפולים, אם אני לא טועה.
איך אפשר להשתמש בנוסחה המיוחדת שלך כדי לספור פעם אחת בלבד ערכים כפולים?
תודה מראש!
-
-
@ua אמר באקסל חישוב עמודות:
ניסיתי באופיס 2019 (מעודכן) לא 365, ורק שלחצתי על: Ctrl+Shift+Enter זה עבד. לחיצה על Enter לבד נתן תוצאה 0.
ייתכן שרק ב-365 הם ויתרו על הצירוף (זו הגרסה שיש לי). מה שכתבתי על הגרסאות התבסס על מה שאמור כאן.
בנוסף - הלחיצה הנ"ל הוסיפה סוגריים מסולסלות - { } מסביב לנוסחה, מה משמעותם ולמה הם נדרשים כאן בשונה מנוסחה רגילה?
זה ציון שהפונקציה מחזירה מערך
הנוסחה הזו לא סופרת בכלל ערכים כפולים אלא מדלגת עליהם - השאלה היא, אולי כוונת השואל לספור פעם אחת ערכים כפולים? מסתבר לי שכך כוונתו, ולא להתעלם לגמרי מכפולים, אם אני לא טועה.
איך אפשר להשתמש בנוסחה המיוחדת שלך כדי לספור פעם אחת בלבד ערכים כפולים?בנוסחא שלי אי אפשר, כי היא מיועדת לאמור לעיל.
אבל אפשר על ידי FREQUENCY:SUM(IF((FREQUENCY(A2:A100,A2:A100)>0),1,0))
הסבר:
Frequency מחזירה את התדירות של ערך מסויים בטווח, ללא חזרות על אותו הערך.
כלומר התדירות תופיע רק עבור הפעם הראשונה שהוא נמצא בטווח, ותהיה 0 בשאר הפעמים.
לאחר מכן משתמשים באותו הטריק כדי למנות את הערכים היחודיים, פשוט סופרים את כל הערכים שגדולים מ-0.אגב באופיס 365 יש כבר פונקציה ייעודית להחזרת ערכים יחודיים, הנקראת UNIQUE, כך שאפשר פשוט לרשום:
COUNT(UNIQUE(A2:A100))