اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

 

السادة الخبراء

اريد تحويل معادلة الجمع هذه الى فى الشيت الى كود لان المعادلة جعلت الملف ثقيل جداً

=SUMPRODUCT(SUMIF(INDIRECT("'"&$H$2:$S$2&"'!$B$13:$B$262");C13;INDIRECT("'"&$H$2:$S$2&"'!$G$13:$G$262")))

جزاكم الله كل خيراً

جمع الشيت.rar

رابط هذا التعليق
شارك

جرب هذا الكود

Sub calcl()
Application.ScreenUpdating = False
My_max = Application.Max(Sheets("تسوية").Range("a:a"))
 For i = 13 To My_max
Sheets("تسوية").Range("h" & i).Formula = "=IFERROR(SUMPRODUCT(SUMIF(INDIRECT(""'""&$L$2:$W$2&""'!$B$13:$B$262""),$C13,INDIRECT(""'""&$L$2:$W$2&""'!""&CHAR(COLUMNS($A$1:A1)+70)&""$13:""&CHAR(COLUMNS($A$1:A1)+70)&""$262""))),"""")"
Sheets("تسوية").Range("h" & i).AutoFill Destination:=Range("h" & i & ":z" & i), Type:=xlFillDefault
Next
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

 

رابط هذا التعليق
شارك

استاذ سليم حاصبيا

اعجز عن شكرك و اهتمامك فى حل المشكلة

فى جزء مش فاهمة  

COLUMNS($A$1:A1)+70)

علما بان A1 فارغة

ثانياً الكود بياخذ وقت طويل جداً ما الحل

جزاكم الله كل خيراً

رابط هذا التعليق
شارك

استاذ سليم

عند التجربة على جزء بسيط

توجد مشكلة كل النتائج على شخص واحد خلية   C13

لا تتغير فى باقى الصفوف

اسف على كثرة الطلبات

جزاكم الله كل خيراً

رابط هذا التعليق
شارك

جرب هذا الماكرو

Sub calcl1()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
On error goto 1
My_max = Application.Max(Sheets("تسوية").Range("a:a"))
Sheets("تسوية").Range("h13:z" & My_max).ClearContents

Sheets("تسوية").Range("h13").Formula = "=IFERROR(SUMPRODUCT(SUMIF(INDIRECT(""'""&$L$2:$W$2&""'!$B$13:$B$262""),$C13,INDIRECT(""'""&$L$2:$W$2&""'!""&CHAR(COLUMNS($A$1:A1)+70)&""$13:""&CHAR(COLUMNS($A$1:A1)+70)&""$262""))),"""")"
Sheets("تسوية").Range("h13").AutoFill Destination:=Range("h13:z13"), Type:=xlFillDefault
  Sheets("تسوية").Range("h13:z13").AutoFill Destination:=Range("h13:z" & My_max), Type:=xlFillDefault
 1: 
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

 

رابط هذا التعليق
شارك

استاذ سليم

اشكرك من كل قلبى الكود كده اسرع من قبل كثير

جزاك الله كل خيراً

اخر طلب عند التجربة سيادنكم عامل الكود الى خلية z 

و الشيت اخرة Av

غيرت فى الكود z الى av g لكنه لم يضبط خالص فى الناتج

اسف على كثرة طلباتى

جعله الله فى ميزان حسناتك

رابط هذا التعليق
شارك

استاذ سليم

اشكرك من كل قلبى الكود كده اسرع من قبل كثير

جزاك الله كل خيراً

اخر طلبين

1- عند التجربة الكود الى خلية z و الشيت اخرة Av غيرت فى الكود z الى av g لكنه لم يضبط خالص فى الناتج

2- مشكلة اخرى لو عدد الاسماء اقل من 13 اسم لا يعطى ناتج

اسف على كثرة طلباتى

جعله الله فى ميزان حسناتك

 

تم تعديل بواسطه خالد الشاعر
رابط هذا التعليق
شارك

6 ساعات مضت, خالد الشاعر said:

للرفع

جرب هذا الماكرو

Sub calcl1()
Application.ScreenUpdating = False
My_max = Application.Max(Sheets("تسوية").Range("a:a"))


Sheets("تسوية").Range("h13").Formula = "=IFERROR(SUMPRODUCT(SUMIF(INDIRECT(""'""&$L$2:$W$2&""'!$B$13:$B$262""),$C13,INDIRECT(""'""&$L$2:$W$2&""'!""&CHAR(COLUMNS($A$1:A1)+70)&""$13:""&CHAR(COLUMNS($A$1:A1)+70)&""$262""))),"""")"
Sheets("تسوية").Range("h13").AutoFill Destination:=Range("h13:z13"), Type:=xlFillDefault
  Sheets("تسوية").Range("h13:z13").AutoFill Destination:=Range("h13:z" & My_max), Type:=xlFillDefault
  
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub

لملف يعمل عندي بصورة طبيعية حتى بعد زيادة عدد الاعمدة

ربما السبب في الجهاز عندك

رابط هذا التعليق
شارك

استاذ سليم 

الكود يكتب المعادلة فى كل خلية و لكن الناتج خطاء

المعادلة هى المشكلة فى هذا الجزء   CHAR(COLUMNS($A$1:A1)+70)

لانه يكتب اسم العمود فهذه المعادلة بعد عمود z لا يكتب اسم العمود مضبوط

برجاء النظر فى الملف المرفق ممكن يوضح لكم سبب المشكلة 

جزاكم الله كل خيراً

جمع الشيت.rar

رابط هذا التعليق
شارك

Private Sub CommandButton3_Click()
	Sheets("pro1").Select
	Sheets("pro1").Copy Before:=Sheets(1)
End Sub

إحتمال الخطأ الموجود في هذا الكود هو :

- 1 لا توجد ورقة بإسم  pro1

- 2 خطأ في كتابة الاسم كإضافة او نقصان مسافة ( حيث المسافة لا يمكن أن ترى بالعين )

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information