Menu

פונקציית LET באקסל: מתן שמות לחלקים של נוסחה

=LET(total,SUM(B2:B6),IF(total>500,total*0.9,total)) מחשבת את הסכום פעם אחת, קוראת לו total ומשתמשת בשם פעמיים. LET הופכת נוסחאות ארוכות לקצרות יותר, קריאות יותר ומהירות יותר, כי כל חלק עם שם מחושב רק פעם אחת.

כל גיליון בעמוד הזה חי: שנו מספר או נוסחה והוא יחושב מחדש.

=LET(total,SUM(B2:B6),IF(total>500,total*0.9,total)) מסכמת את B2:B6 פעם אחת, נותנת לתוצאה את השם total, ואז משתמשת בשם הזה פעמיים: פעם אחת כדי לבדוק אותו ופעם אחת כדי להחזיר אותו. בלי LET הייתם כותבים את SUM שלוש פעמים: =IF(SUM(B2:B6)>500,SUM(B2:B6)*0.9,SUM(B2:B6)).

הנחה של 10% על הזמנות מעל 500
D2
ABCD
1OrderAmountTotal to pay
2A-101120580.5
3A-10295
4A-103210
5A-10480
6A-105140
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

ההזמנות מסתכמות ב-645, מעל 500, ולכן D2 מציג 580.5. שנו את B4 ל-50 והסכום יורד ל-485, מתחת לסף, ולכן D2 מציג 485 בלי הנחה.

התחביר של LET

=LET(name1, value1, [name2, value2, ...], calculation)
  • כל name הוא מילה שאתם בוחרים, ואחריה ה-value שהיא מייצגת: מספר, טווח או נוסחה.
  • אפשר להגדיר עד 126 זוגות. ערך יכול להשתמש בכל שם שהוגדר לפניו.
  • הארגומנט האחרון הוא ה-calculation, שמשתמש בשמות ונותן את התוצאה.

LET דורשת Excel 2021, Excel 2024 או Microsoft 365. ב-Excel 2019 ובגרסאות ישנות יותר היא מציגה #NAME?. ב-Google Sheets יש LET עם אותו תחביר.

LET עם כמה משתנים

שמות הופכים נוסחה של שורה למשהו שנקרא כמו משפט. כאן כל שורה מחשבת סכום ביניים ומורידה 10% כשהוא עובר את 100:

הנחה לכל שורה
D2
ABCD
1ItemPriceQtyTo pay
2Pen2.51025
3Bag403108
4Lamp35270
5Mug815108
6Desk1501135
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

ה-120 של התיקים הופך ל-108, גם ה-120 של הספלים הופך ל-108, וה-150 של השולחן הופך ל-135; העטים (25) והמנורות (70) נשארים כמו שהם. הנוסחה נכתבה ב-D2 ומולאה למטה, ו-subtotal הוא מספר אחר בכל שורה.

שם יכול להיבנות על השם שלפניו: =LET(x,2,y,x*3,x+y) קובעת את x ל-2 ואת y ל-6, ומחזירה 8.

חישוב חיפוש פעם אחת ושימוש חוזר בו

חיפוש שמופיע פעמיים בתוך IF רץ פעמיים. LET מריצה אותו פעם אחת. זה מחזיר את המחיר ועוד 20%, או הודעה כשהמוצר חסר:

חיפוש אחד, שימוש כפול
F2
ABCDEF
1ProductRegionPriceLook forPrice + 20%
2AppleNorth1.2Pear1.8
3PearSouth1.5KiwiNot found
4CarrotEast0.8
5BreadNorth2.4
6MilkSouth1.1
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

Pear נמצא, ולכן F2 מציג 1.8. Kiwi לא נמצא ברשימה, XLOOKUP מחזירה את הטקסט הריק שניתן לה כארגומנט רביעי, ו-F3 מציג Not found. הקלידו Kiwi ב-A4 ו-F3 משתנה למחיר שלו ועוד 20%.

LET עם FILTER

LET הכי שימושית עם מערכים דינמיים, כשצריך טווח מסונן יותר מפעם אחת. זה נותן שם לשורות המתאימות, סופר אותן ומחשב את ממוצע המכירות שלהן בנוסחה אחת:

סיכום של אזור אחד
F2
ABCDEF
1NameRegionSalesRegionNorth
2AnnNorth120Summary3 reps, average 126.7
3BenSouth80
4CaraNorth200
5DanEast150
6EveSouth95
7FinnNorth60
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

עבור North הוא מציג 3 reps, average 126.7. בחרו South ב-F1 בשביל 2 reps, average 87.5. INDEX(rows,0,3) לוקחת את העמודה השלישית של השורות המסוננות. בלי LET, ה-FILTER הייתה נכתבת פעמיים.

לוח שנה חודשי עם תאים ריקים

לוח השנה בעמוד על SEQUENCE מציג ימים של החודשים הסמוכים. LET נותנת שם לראשון בחודש ולרשת התאריכים, ואז מרוקנת כל תאריך שמחוץ לחודש:

אפריל 2026, חודשים אחרים ריקים
A2
ABCDEFG
1SunMonTueWedThuFriSat
21234
3567891011
412131415161718
519202122232425
62627282930
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

שנו את DATE(2026,4,1) ל-DATE(2026,5,1) והרשת מצוירת מחדש למאי. מכיוון שלראשון בחודש יש שם אחד, יש רק תאריך אחד לשנות, לא שלושה.

תרגול: משלוח עם LET

תורכם
D2
ABCD
1OrderAmountTo pay
2A-101120
3A-10295
4A-103210
5A-10480
6A-105140
לחצו על תא כדי לראות את הנוסחה שלו. שנו מספר או נוסחה והגיליון יחושב מחדש.

תורכם: ב-D2, סכמו את הסכומים שב-B2:B6. אם הסכום מתחת ל-800, הוסיפו 25 למשלוח; אחרת החזירו את הסכום.

כללי שמות ושגיאות ב-LET

רוב השגיאות ב-LET באות מהשמות:

  • שם חייב להתחיל באות ולא להכיל רווחים. unit price נכשל; השתמשו ב-unit_price או ב-unitPrice.
  • שם לא יכול להיראות כמו כתובת תא. a1 ו-tax2026 הם כתובות תאים באקסל (TAX היא עמודה), ולכן LET דוחה אותם עם #NAME?. rate או tax_2026 עובדים.
  • שם נכתב בדיוק באותו איות בכל פעם שמשתמשים בו. שגיאת הקלדה במקום השימוש נותנת #NAME?, כי אקסל מחפש פונקציה או טווח בעל שם עם האיות הזה.
  • הארגומנט האחרון חייב להיות חישוב. ל-=LET(x,5) יש שם וערך אבל שום דבר להחזיר, ולכן אקסל דוחה אותה.
  • שמות קיימים רק בתוך הנוסחה שלהם. כדי להשתמש שוב בחישוב בהרבה תאים, שמרו אותו כ-LAMBDA בעלת שם במקום.
=LET(a1,5,a1*2)          #NAME?  (a1 is a cell address)
=LET(rate,8%,100*rate)   8

שאלות נפוצות

מה פונקציית LET עושה באקסל?

היא נותנת שמות לערכים בתוך נוסחה אחת. =LET(total,SUM(B2:B6),total*2) מחשבת את SUM(B2:B6) פעם אחת, קוראת לזה total, ומחזירה את total כפול 2. השמות קיימים רק בתוך אותה נוסחה.

איך משתמשים ביותר ממשתנה אחד ב-LET?

הוסיפו עוד זוגות של שם וערך לפני החישוב האחרון: =LET(price,B2,qty,C2,price*qty). ערך מאוחר יותר יכול להשתמש בשם קודם, כמו ב-=LET(x,2,y,x*3,x+y), שמחזירה 8.

למה נוסחת LET שלי מחזירה #NAME?

או שבאקסל שלכם אין LET (היא דורשת Excel 2021 או Microsoft 365), או ששם מאוית לא נכון במקום שבו משתמשים בו, או ששם אינו מותר, למשל שם שנראה כמו כתובת תא כמו a1 או tax2026, או שם שמתחיל במספר.

האם LET הופכת נוסחאות באקסל למהירות יותר?

היא יכולה. בלי LET ביטוי שחוזר, כמו אותה XLOOKUP שכתובה פעמיים בתוך IF, מחושב בכל פעם שהוא מופיע. עם LET הוא מחושב פעם אחת והתוצאה משמשת שוב.

איור של שפות התכנות ב-Coddy

ללמוד תכנות עם Coddy

להתחיל