ניהול מלאי

ניהול מלאי באקסל: איך בונים גיליון נכון ומתי עוברים למערכת

נכתב על ידי צוות StoreChart7 דקות קריאה

בקצרה

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

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

איך בונים גיליון מלאי באקסל

חוברת העבודה צריכה שני גיליונות:

  • מוצרים: שורה לכל פריט.
  • תנועות: שורה לכל פעם שהמלאי משתנה.

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

  1. 1

    בונים גיליון מוצרים

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

  2. 2

    בונים גיליון תנועות

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

  3. 3

    מוסיפים אימות נתונים

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

  4. 4

    מחשבים מלאי עם SUMIFS

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

  5. 5

    מדגישים מלאי נמוך

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

  6. 6

    בודקים וסופרים כל שבוע

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

עמודות בגיליון המוצרים

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

לכל וריאציה מק"ט משלה. חולצה בשלוש מידות היא שלוש שורות, כי מידה M יכולה להיגמר כש-L עוד על המדף.

גיליון תנועות במקום דריסה

כשמישהו משנה "40" ל-"37", הגיליון שוכח למה: שלוש מכירות, יחידה פגומה או טעות בספירה. בגיליון תנועות כל שינוי הוא שורה נפרדת עם העמודות האלה:

  • תאריך: מתי המלאי זז.
  • מק"ט: של המוצר שזז.
  • סוג: קבלה, מכירה, החזרה או תיקון.
  • כמות: מסומנת, קבלות והחזרות בפלוס, מכירות ופחת במינוס.
  • אסמכתה: מספר הזמנה או מספר חשבונית של ספק.

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

נוסחאות מלאי באקסל: SUMIFS

הנוסחאות כאן מניחות את מבנה העמודות הזה:

  • גיליון "תנועות": עמודה A היא תאריך, B מק"ט, C סוג ו-D כמות.
  • גיליון "מוצרים": עמודה A היא מק"ט, C נקודת הזמנה, D עלות ליחידה ו-G מלאי נוכחי.

המלאי הנוכחי בשורה 2:

=SUMIFS('תנועות'!$D:$D,'תנועות'!$B:$B,$A2)

שווי המלאי של המוצר הוא =G2*D2. יחידות שנמכרו ב-30 הימים האחרונים, נתון שעוזר לקבוע נקודת הזמנה:

=-SUMIFS('תנועות'!$D:$D,'תנועות'!$B:$B,$A2,'תנועות'!$C:$C,"מכירה",'תנועות'!$A:$A,">="&TODAY()-30)

שמות הפונקציות נשארים באנגלית גם באקסל בעברית. אם מעצבים את שני הגיליונות כטבלה (Ctrl+T), הנוסחאות נגררות לבד לכל שורה חדשה.

עיצוב מותנה למלאי נמוך

  1. מסמנים את שורות גיליון המוצרים.
  2. בוחרים עיצוב מותנה, אחר כך כלל חדש והשתמש בנוסחה כדי לקבוע אילו תאים לעצב.
  3. מקלידים =$C2>=$G2, כלומר נקודת ההזמנה גדולה מהמלאי הנוכחי או שווה לו.
  4. בוחרים צבע מילוי.

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

אימות נתונים נגד טעויות

בגיליון התנועות מגדירים שלושה כללים באימות נתונים:

  • מק"ט: רשימה שמצביעה על עמודת המק"ט בגיליון המוצרים, כך שטעות הקלדה לא תיצור מוצר שלא קיים.
  • סוג: רשימה של ארבעה ערכים.
  • כמות: מספרים שלמים בלבד.

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

דוגמה: גיליון מלאי לחנות ספלים

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

מק"טשםנקודת הזמנהמלאי נוכחי
MUG-WHTספל לבן2034
MUG-BLKספל שחור2012
MUG-GRNספל ירוק1010

השחור והירוק מודגשים: השחור ירד מתחת לנקודת ההזמנה, והירוק הגיע אליה בדיוק.

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

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

המגבלות של ניהול מלאי באקסל

  • אין חיבור חי לחנות. כל הזמנה צריך להקליד, להדביק או לייבא. בין עדכון לעדכון הגיליון לא נכון, ולקוחות יכולים לקנות מלאי שכבר נגמר.
  • מכירת יתר בין ערוצים. מי שמוכר באתר ובמרקטפלייס, או מחזיק שתי חנויות, מגלה שכל ערוץ מכיר רק את המכירות שלו. הגיליון מדביק את הפער רק כשמישהו מעדכן אותו.
  • טעויות ידניות. נוסחה שנגררה שורה אחת פחות, מיון שהופעל על עמודה אחת בלבד, ערך שהודבק מעל נוסחה. שום דבר לא מתריע.
  • כמה עורכים. שני אנשים שעורכים את אותו קובץ משותף, או עותק שנשמר בשם "מלאי סופי 3", ויש לכם שתי גרסאות של האמת.
  • אין היסטוריה אלא אם בונים אותה. גיליון התנועות פותר את זה, אבל רק אם כולם משתמשים בו, בכל פעם.
  • העלויות מתיישנות. עמודת עלות אחת לא תופסת מחירי ספק שמשתנים, או את ההובלה והמכס של משלוח מיבוא, ולכן שווי המלאי והרווח זזים בשקט. הרחבה במה זה עלות נחיתה.

סימנים שאקסל כבר לא מספיק

אל תחפשו מספר הזמנות מסוים. חפשו את הסימנים האלה:

  1. מכרתם משהו שלא היה לכם, ונאלצתם להחזיר כסף או להתנצל.
  2. יותר מאדם אחד מעדכן את המלאי.
  3. אתם מוכרים ביותר מחנות או ערוץ אחד. ניהול כמה חנויות מפורט בעמוד ניהול רב-חנותי.
  4. ההתאמה בין הגיליון לחנות לוקחת יותר זמן מהפעולה לפי מה שהוא מראה.
  5. אתם מייבאים סחורה וצריכים את העלות האמיתית ליחידה, כולל הובלה ומכס, כמו שמחשב מודול היבוא.
  6. המלאי יושב ביותר ממקום אחד. ראו את המדריך ניהול מלאי מחסן.

לעקרונות שמאחורי כל זה, התחילו במדריך המלא לניהול מלאי.

אקסל מול מערכת לניהול חנות

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

נושאגיליון אקסלStoreChart
הזמנותמקלידים, מדביקים או מייבאיםנכנסות אוטומטית מחנויות WooCommerce ו-Shopify מחוברות
מלאיSUMIFS על גיליון תנועותכל הזמנה מורידה מהמלאי, קבלות מוסיפות לו, ולכל מוצר סף מלאי נמוך
רווח לכל הזמנהנוסחה שמישהו מתחזקרווח גולמי ונקי אחרי עלות מוצר, משלוח ועמלות
עלויות יבואמחלקים ידנית בין המוצריםהובלה, מכס וביטוח נכנסים לעלות הנחיתה
לקוחותגיליון נפרד בלי קשר להזמנותכרטיס לקוח עם היסטוריית הזמנות, תגיות וחיובים
צוותקובץ משותף וכמה גרסאותכניסה אישית ותפקיד לכל אחד, עם אפשרות להסתיר עלויות ורווחים
גמישותכל עמודה ונוסחה שתרצומבנה קבוע, עם ייצוא הזמנות ולקוחות ל-CSV לניתוח משלכם
עלותבלי עלות נוספת אם כבר יש לכם Excelיש תוכנית חינמית, והתוכניות בתשלום נבדלות במספר החנויות, ההזמנות והמשתמשים

הגמישות של אקסל אמיתית, ובעלי חנויות רבים ממשיכים להשתמש בו לניתוחים חד-פעמיים גם אחרי המעבר. כדאי לדעת ש-StoreChart לא מעדכנת את המלאי בחזרה בחנויות המחוברות, ולכן את הזמינות באתר ממשיכים לנהל ב-WooCommerce או ב-Shopify. את התוכניות תמצאו בעמוד התמחור.

מעבר מאקסל ל-StoreChart בייבוא CSV

ב-StoreChart הזמנות מחנויות WooCommerce ו-Shopify מחוברות נכנסות אוטומטית, וכל הזמנה מורידה את המלאי הזמין של המוצר. קבלות מלאי מוסיפות לו, ולכל מוצר נשמרת היסטוריה של הקבלות והמשלוחים שלו. הגיליון שלכם הוא נקודת הפתיחה:

  1. מסדרים את המק"טים. שורה אחת לכל מק"ט. שורה בלי מק"ט מקבלת קוד שנוצר אוטומטית, ומק"ט שמופיע פעמיים בקובץ מיובא פעם אחת בלבד. השתמשו באותיות לועזיות, מספרים, מקפים ונקודות, עד 50 תווים, כי תווים אחרים מסומנים באזהרה. שמרו על אותם מק"טים שיש בחנות, כי הזמנות נכנסות מותאמות למוצרים לפי מק"ט.
  2. משנים את כותרות העמודות לשמות השדות שהמייבא מצפה להם, באנגלית גם כשהתוכן בעברית: sku, name, price, cost, category, stock_quantity, ואם רוצים גם description. עמודות הספק והמיקום לא מיובאות.
  3. שומרים כ-CSV UTF-8 (מופרד בפסיקים). האשף מקבל רק קובצי CSV, ומציע קובץ לדוגמה עם העמודות הנכונות. השמירה ב-UTF-8 שומרת על שמות מוצרים בעברית.
  4. מייבאים לחנות הנכונה. הייבוא נעשה לכל חנות בנפרד. מק"טים שכבר קיימים באותה חנות מדולגים ולא מתעדכנים. מספר המוצרים שאפשר לייבא תלוי במכסת המוצרים של התוכנית שלכם.
  5. בודקים את מלאי הפתיחה. כל ערך ב-stock_quantity נרשם כקבלת מלאי פתיחה בעלות של אותה שורה, במחסן ברירת המחדל של החנות. כדי להכניס מלאי למחסן אחר, משתמשים בקבלת מלאי עם קובץ CSV של מק"ט, כמות ועלות, ובוחרים את מחסן היעד.
  6. מפעילים ניהול מלאי למוצרים. מוצרים מיובאים מתחילים כשמעקב המלאי כבוי, אלא אם בקובץ יש עמודה track_inventory עם הערך true. אחר כך קובעים לכל מוצר סף מלאי נמוך, כדי שיופיע בסינון של מלאי נמוך.

אפשר לייבא באותה דרך גם לקוחות, הזמנות ושורות הזמנה. בעמוד ייבוא CSV מפורט מה כל קובץ צריך לכלול.

שאלות נפוצות

אקסל מספיק לניהול מלאי?

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

איך מחשבים מלאי נוכחי באקסל?

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

גיליון מלאי באקסל יכול להסתנכרן עם החנות?

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

איך מעבירים את המלאי מאקסל ל-StoreChart?

משנים את שמות העמודות ל-sku, name, price, cost, category ו-stock_quantity, שומרים את הגיליון כקובץ CSV ומייבאים אותו לחנות הנכונה באשף ייבוא ה-CSV. כל ערך ב-stock_quantity נרשם כקבלת מלאי פתיחה בעלות של אותה שורה, ומק"טים שכבר קיימים בחנות מדולגים ולא נדרסים.

StoreChart על הנתונים של החנות שלכם

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