القول المأثور قام بنشر أغسطس 23, 2021 قام بنشر أغسطس 23, 2021 السلام عليكم ورحمه الله ارجو من لديه الطريقة ، لدي ملف أكسل به بيانات ومن ضمنها عمود (رقم المعرف الثابت) واستخدم معادلة أندكس والماتش لجلب المبالغ من ملفات أكسل أخرى عن طريق شرط (رقم المعرف الثابت)، وأريد استخدام الأوامر بدلاً من المعادلات لجلب القيم بشرط من ملفات أكسل أخرى، كما هو موضح في الصورة المرفقة مرفق ثلاثة ملفات أكسل ملف الرئيسي للتجميع وملفين لجلب البيانات منهن رقم 1 و 2 مستخدم بها معادلتي أندكس وماتش 1.xlsx 2.xlsx التجميع.xlsx
تمت الإجابة أ / محمد صالح قام بنشر أغسطس 23, 2021 تمت الإجابة قام بنشر أغسطس 23, 2021 يمكنك استعمال هذا الاجراء Sub mas_getvalues() With Range("b6:b7") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A6,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("b10:b12") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A10,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("b15:b16") .Formula = "=INDEX('1.xlsx'!$C:$C,MATCH(A15,'1.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c6:c7") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A6,'2.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c10:c12") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A10,'2.xlsx'!$A:$A,0))" .Value = .Value End With With Range("c15:c16") .Formula = "=INDEX('2.xlsx'!$D:$D,MATCH(A15,'2.xlsx'!$A:$A,0))" .Value = .Value End With وربطه بشكل أو زر ولا تنس حفظ الملف بامتداد مثل xlsb أو xlsm 2
القول المأثور قام بنشر أغسطس 23, 2021 الكاتب قام بنشر أغسطس 23, 2021 جزاك الله خيرا استاذ محمد كما ومطلوب السؤال، هل يمكن جلب البيانات دون تحديد الخلايا وكتابة رقم الصف ورمزه ، إذا كنا ننتحدث عن مئات الصفوف من الصعب كتابتها جميعها فيما يتعلق بملف التجميع بحيث يتجاهل الصف الذي به معادلة الجمع،
أ / محمد صالح قام بنشر أغسطس 23, 2021 قام بنشر أغسطس 23, 2021 المشكلة في ملفك أنها نطاقات متباعدة لو كانت كتلة واحدة من الصف مثلا 5 الى الصف 1000 سيتم كتابة المعادلة مرة واحدة ومعها القيمة في with واحدة لكن ملفك كل صفين مجموعة ثم مجموعها 1
القول المأثور قام بنشر أغسطس 23, 2021 الكاتب قام بنشر أغسطس 23, 2021 (معدل) نعم استاذي المشكلة تباعد الصفوف . جزيت خيرا استاذ محمد / ممكن تكرما كتابة المعادلة في حالة كانت كتله واحده دون تقطيع. مع ازالة نص الخطأ في حالة عدم وجود قيمة تم تعديل أغسطس 23, 2021 بواسطه القول المأثور 1
أ / محمد صالح قام بنشر أغسطس 23, 2021 قام بنشر أغسطس 23, 2021 الفكرة في تغيير النطاق الذي سيتم وضع المعادلة له ثم تحويله إلى قيمة مثلا من b6:b1000 With Range("b6:b1000") .Formula = "=iferror(INDEX('1.xlsx'!$C:$C,MATCH(A6,'1.xlsx'!$A:$A,0)),"""")" .Value = .Value End With تم وضع دالة iferror بالتوفيق 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.