المحتويات
المشكلة
لنفترض أن لدينا جدولًا بسيطًا مثل هذا ، يتم فيه حساب المبالغ لكل شهر في مدينتين ، ثم يتم تحويل الإجمالي إلى يورو بمعدل الخلية الصفراء J2.
تكمن المشكلة في أنك إذا قمت بنسخ النطاق D2: D8 مع الصيغ في مكان آخر على الورقة ، فسيقوم Microsoft Excel تلقائيًا بتصحيح الروابط في هذه الصيغ ، ونقلها إلى مكان جديد والتوقف عن العد:
المهمة: انسخ النطاق مع الصيغ بحيث لا تتغير الصيغ وتبقى كما هي ، مع الاحتفاظ بنتائج الحساب.
الطريقة 1. الروابط المطلقة
الطريقة الثانية: تعطيل الصيغ مؤقتًا
لمنع تغيير الصيغ عند النسخ ، تحتاج (مؤقتًا) إلى التأكد من توقف Excel عن معاملتها كصيغ. يمكن القيام بذلك عن طريق استبدال علامة التساوي (=) بأي حرف آخر لا يوجد عادة في الصيغ ، مثل علامة التجزئة (#) أو زوج من علامات العطف (&&) لوقت النسخ. لهذا:
- حدد النطاق مع الصيغ (في مثالنا D2: D8)
- انقر كترل + H على لوحة المفاتيح أو على علامة تبويب الصفحة الرئيسية - بحث وتحديد - استبدال (الصفحة الرئيسية - بحث وتحديد - استبدال)
- في مربع الحوار الذي يظهر ، أدخل ما نبحث عنه وما نستبدل به ، وفي المعلمات (خيارات) لا تنسى أن توضح نطاق البحث - الصيغ. نضغط استبدال الكل (استبدال الكل).
- انسخ النطاق الناتج مع الصيغ غير النشطة إلى المكان الصحيح:
- استبدل # on = مرة أخرى باستخدام نفس النافذة ، مع إعادة الوظائف إلى الصيغ.
الطريقة الثالثة: النسخ عبر المفكرة
هذه الطريقة أسرع وأسهل بكثير.
اضغط على اختصار لوحة المفاتيح السيطرة + Ё أو زر إظهار الصيغ علامة التبويب معادلة (الصيغ - إظهار الصيغ), لتشغيل وضع التحقق من الصيغة - بدلاً من النتائج ، ستعرض الخلايا الصيغ التي يتم حسابها من خلالها:
انسخ مجموعتنا D2: D8 والصقها في المعيار دفتر:
حدد الآن كل شيء تم لصقه (Ctrl + A) ، وانسخه إلى الحافظة مرة أخرى (Ctrl + C) والصقه على الورقة في المكان الذي تريده:
يبقى فقط الضغط على الزر إظهار الصيغ (إظهار الصيغ)لإعادة Excel إلى الوضع العادي.
ملاحظة: تفشل هذه الطريقة أحيانًا في الجداول المعقدة ذات الخلايا المدمجة ، ولكنها تعمل بشكل جيد في الغالبية العظمى من الحالات.
الطريقة الثالثة. ماكرو
إذا كان عليك في كثير من الأحيان القيام بنسخ الصيغ بدون تغيير المراجع ، فمن المنطقي استخدام ماكرو لهذا الغرض. اضغط على اختصار لوحة المفاتيح ALT + F11 أو زر Visual Basic علامة التبويب المطور (مطور)، أدخل وحدة جديدة من خلال القائمة إدراج - وحدة وانسخ نص هذا الماكرو هناك:
Sub Copy_Formulas () Dim copyRange كنطاق ، لصق النطاق كنطاق عند الخطأ ، استئناف المجموعة التالية copyRange = Application.InputBox ("حدد الخلايا مع الصيغ المراد نسخها." ، _ "نسخ الصيغ تمامًا" ، الافتراضي: = Selection.Address ، النوع: = 8) إذا لم يكن copyRange شيئًا ، فقم بإنهاء المجموعة الفرعية pastRange = Application.InputBox ("حدد الآن نطاق اللصق." & vbCrLf & vbCrLf & _ "يجب أن يكون النطاق مساويًا في الحجم لنطاق الخلايا الأصلي" & vbCrLf & _ " لنسخ. "،" نسخ الصيغ تمامًا "، _ الافتراضي: = Selection.Address ، النوع: = 8) إذا كان لصق Range.Cells.Count <> copyRange.Cells.Count ثم MsgBox" تختلف أحجام النسخ واللصق! "، vbExclamation ، "خطأ النسخ" ، اخرج من النهاية الفرعية إذا لم يكن لصق النطاق شيئًا ، فقم بإنهاء لصق Sub Else PasteRange.Formula = copyRange.Formula End If End Sub
يمكنك استخدام الزر لتشغيل الماكرو. وحدات الماكرو علامة التبويب المطور (المطور - وحدات الماكرو) أو اختصار لوحة المفاتيح ALT + F8. بعد تشغيل الماكرو ، سيطلب منك تحديد النطاق بالصيغ الأصلية ونطاق الإدراج ونسخ الصيغ تلقائيًا:
- عرض مريح للصيغ والنتائج في نفس الوقت
- لماذا يلزم نمط المرجع R1C1 في صيغ Excel
- كيف تجد بسرعة جميع الخلايا مع الصيغ
- أداة لنسخ الصيغ الدقيقة من الوظيفة الإضافية PLEX