קובץ אקסל איטי

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

ובכן, בכדי לנסות ולפתור את הבעיה, ראשית מומלץ להכיר את הקובץ האיטי, לדעת היכן נמצאות הנוסחאות שלו, מתי הוא איטי (האם בפתיחת הקובץ, בסגירת הקובץ, בזמן הזנת נתון חדש בתאים, בזמן הוספת עמודה / שורה / גיליון וכו') האם תמיד הוא איטי או רק לפעמים, האם שאתם פותחים קובץ אקסל חדש וריק, האם גם הוא איטי ? ועוד… ככל שיהיה יותר מידע כך נוכל לבודד את הבעיה ולזהות מה גורם לאקסל לזוז לאט.

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

אז מה גורם לאקסל להיות איטי ?

להלן מספר גורמים, נסו למצוא מה מהגורמים הללו נמצאים אצלכם בקבצים:

 

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

  2.  ריבוי גיליונות בקובץ:

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

  3. נוסחאות:

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

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

    • ככל שטווח ההפניה גדול יותר כך גדל "משקל" הנוסחה, לכן נסו להימנע מהפנייה לעמודה שלמה אם אין צורך בכך.
      למשל אם הטווח שלכם הוא מ A2:A1000, נסו להפנות אל טווח זה ולא אל A:A שכולל את כל 1,048,576 התאים שיש בעמודה באקסל.

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

    • ישנן ״משפחות״ של נוסחאות שהן ״כבדות״ יותר מאשר ״משפחות״ של נוסחאות מקבילות לכן אם המצב מאפשר צריך לשקול מעבר לנוסחאות ״קלות״ יותר.
      לדוגמא:
      משפחת נוסחאות DSUM, DCOUNT, DAVERAGE) D), קלות יותר ממשפחת נוסחאות IFS
      (SUMIFS, COUNTIFS, AVERAGEIFS)
      דוגמה נוספת:
      גם מבחינת גמישות וגם מבחינת ביצועים (בכמויות גדולות של מידע) מומלץ להשתמש ב INDEX + MATCH ולא ב VLOOKUP או ב HLOOKUP.

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

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

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

  2. 32 ביט:
    אקסל כמו תוכנות רבות אחרות מבוססות וינדוס מציע גרסת 32 ביט וגרסת 64 ביט. (אם אתם לא יודעים כמה ביט האקסל שלכם לחצו כאן)
    אם רכשתם אופיס או שאתם מנויים באופיס 365, מיקרוסופט נותנים לכם את האפשרות לבחור את סוג הגרסה שאתם מעוניינים.
    מבלי לכנס להבדלים בין הגרסאות, דעו כי שימוש בגרסת 64 מאפשר יותר ניצול של משאבי המחשב, מה שאומר שבמצבים שיש לכם קבצים כבדים, האקסל שלכם יוכל להשתמש ביותר כוח מחשוב בכדי לבצע פעולות ובהחלט יבצע אותן מהר יותר מאשר גרסת 32 ביט.