שאלה לגבי העתקת נוסחאות בין תאים

pinkys brain1

New member
שאלה לגבי העתקת נוסחאות בין תאים

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

זה יוצר מצד שבו, כאשר אני מבצע איזשהיא בדיקה שחוצה בין טבלאות ואחר כך מעתיק את הנוסחא לשאר התאים - אז רק התאים הרלוונטים לאופן ההעתקה (או "אנכי" או "אופקי") מתעדכנים אוטומטית בעת ה"גרירה", אבל אחר כך אני צריך לשנות ידנית את התאים שרלוונטיים לצורה האחרת
לדוגמא, אם בתא N7 אני כותב תנאי מסוג
=IF(D5>0,D5,N5+N6)
ואז מעתיק את הנוסחא לתאים באותה שורה (כלומר גורר לכיוון O7,P7,Q7....) אז החלק הרלוונטי של N5+N6 מתעדכן בצורה טובה לעמודה הרלוונטית, אך התאים הרלוונטיים ל-D5 צריכים להתעדכן לצורה אנכית - כלומר להיות D6,D7,D8,D9...)

האם יש דרך טובה לבצע את העדכון כך שהתאים הרלוונטיים לעדכון "עמודה" יתעדכנו ע"פ העמודה, והתאים הרלוונטיים לעדכון "שורה" יתעדכנו ע"פ השורה?

מצורף קובץ (בסיסי, אך שמדגים את מהות הבעיה) לדוגמא

תודה רבה מראש!
 

pinkys brain1

New member
הערת אגב,

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

iyyi

New member
יש צורך לשפר את קובץ הדוגמה

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

pinkys brain1

New member
הי

בקובץ המקורי יש נוסחא (בתא שכתוב בו "חישוב") ואת הנוסחא הזאת אני רוצה לגרור שמאלה לכיוון התאים בעמודות O,P
&nbsp
התוצאות הרצויות, ע"פ הנתונים המוזנים שם כרגע:
N7=1 (כפי שמופיע בקובץ הנוכחי) מכיוון שבתא הבדיקה הרלוונטי D5 יש מספר חיובי
O7=3 מכיוון שבתא הבדיקה הרלוונטי D6 אין מספר חיובי, אז הוא סוכם את 1+2
P7=9 מכיוון שבתא הבדיקה הרלוונטי D8 יש מספר חיובי
&nbsp
האם ההסבר תקין ומובן או שנדרשות השלמות?
&nbsp
תודה מראש
 

iyyi

New member
כתוב ב-N8 את הנוסחה בצילום המסך וגרור שמאלה

להלן הנוסחה:
=IF(INDEX($D:$D,COLUMN()-9)>0,INDEX($D:$D,COLUMN()-9),N5+N6)

הרעיון פשוט. פונקציית ה-INDEX מביאה ערכים מעמודה D. בעמודה N מקטע הנוסחה:
COLUMN()-9

מחזיר את המספר 5 שזאת מספר השורה של התא D5 - שזה הערך שמחזירה נוסחת ה-INDEX. בעמודה O מקטע זה יחזיר את המספר 6 ונוסחת ה-INDEX תחזיר את ערך התא ב-D6, וכן הלאה
שים לב שהמספר אותו מורידים (או מוסיפים) למספר העמודה תלוי במיקום היחסי של הטבלאות.

 

pinkys brain1

New member
קודם כל, תודה רבה. שאלה קטנה נוספת -

ממה שאני מבין מהנוסחא - זה אומר שאם יום אחד מישהו (חס וחלילה) ימחק / יוסיף מ/לטבלה שנמצאת בצד ימין שורות / עמודות, אז בעצם כל הנוסחאות כבר לא תהיינה רלוונטיות ויחזירו ערכים שגויים? (כי עמודה D מקובעת, וגם המיקום היחסי כבר לא בטוח יהיה "9-")?
בעיקרון, *קצת* פחות מטריד אותי שיתווספו שורות (כי לא נראה לי שבין 01/08/19 ל-02/08/19 יכנס פתאום יום נוסף
), אבל יותר מטריד אותי שמתישהו בעתיד מישהו יוסיף עמודות חדשות...
מה שכן, ראיתי ש*אחרי* שאני מבצע את הגרירה, שאני יכול לבצע "החלפה" ייעודית לתאים הספציפיים שאני בוחר (בלי שזה ישנה לי תאים אחרים שלא מסומנים) אז אולי זה יהיה פתרון טוב (לשנות את ה-
Dִִִִִ$:D$
ל: D;D
באופן גורף על התאים האלה שנגררו...

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

תודה רבה!
 
למעלה