עקבו אחרינו בפייסבוק:

כיצד להעתיק ולהדביק נוסחאות מבלי לשנות את הנוסחה בלחיצת כפתור? (מאקרו)

Print Friendly, PDF & Email

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

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

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

אז איך עושים זאת?

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

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

הקוד הנדרש:

Public x As Integer, y As Integer
Public COPYRANGE() As String

Sub copyformulas()
x = Selection.Rows.Count
y = Selection.Columns.Count
ReDim COPYRANGE(1 To x, 1 To y) As String
j = Selection.Row
k = Selection.Column
For o = 1 To x
For P = 1 To y
COPYRANGE(o, P) = cells(j, k).Formula
k = k + 1
Next P
k = Selection.Column
j = j + 1
Next o
End Sub

Sub pasteformulas()
Application.ScreenUpdating = False
Dim j, k As Integer
For j = 1 To x
For k = 1 To y
ActiveCell = COPYRANGE(j, k)
'use the following row if you want to paste the formulas without the "=" sign
'ActiveCell = Replace(COPYRANGE(j, k), "=", "")
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Activate
Next k
ActiveCell.Offset(rowOffset:=1, columnOffset:=-y).Activate
Next j
Application.ScreenUpdating = True
End Sub

הסבר בקצרה על הקוד – הקוד מורכב משתי תכניות שונות – הראשונה נקראת copyformulas – והיא מעתיקה ו"זוכרת" את הנוסחאות המקוריות שלכם. התכנית השנייה, אשר נקראת pasteformulas, תבצע את ההדבקה. כל שנותר לכם הוא להעתיק את התחום הנדרש עם המאקרו שלנו, לעמוד על המקום בו נרצה להדביק את הקוד, ולהנות 🙂

הרצת המאקרו בלחיצת כפתור

כעת, לאחר שהדבקתם את הקוד במלואו, נשייך לכל אחת מהתכניות שהזכרנו לעיל קיצור מקלדת משלה. אנחנו ממליצים לשייך את הקיצורים CTRL+SHIFT+C ל- copyformulas, ולשייך את הקיצור CTRL+SHIFT+V ל- paste formulas. איך עושים זאת?

בסרגל הכלים, לחצו על View – Macros – View Macros (או לחילופין – לחצו ALT + F8). כעת סמנו את מאקרו copyformulas, לחצו על Options, היכנסו לתיבה שבה נתבקשתם להזין את המקש במקלדת. אם אתם רואים רק CTRL + , פשוט תלחצו במקלדת על המקש SHIFT (נסו לשחק עם המקש השמאלי/הימני של ה- SHIFT)  ותוך כדי לחצו על C, או לחילופין – הפעילו את מקש CAPS LOCK, עד לקבלת התוצאה הבאה:

חיזרו על אותה פעולה גם עבור pasteformulas, רק שעבורה השתמשו בקיצור "CTRL + SHIFT + V". זהו, כעת המאקרו שלכם מוכן לפעולה:

(כמובן שהמדריך המצורף בקישור זה המדריך שאתם קוראים כרגע…)

שימו לב – ניתן להריץ את המאקרו על תאים בודדים וגם על טווחים רציפים (לדוגמא – העתקה של קוד מתא A1 עד תא C5)!

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

שיהיה שימוש מהנה ובטוח 🙂

אהבתם? שתפו עם החברים:

השאר תגובה