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

محتاج مساعدة بخصوص حاصل ضرب عامود فى عامود بالكود وليس الدالة


mrastra

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

السلام عليكم ورحمة الله

مرفق مثال للتعديل علية والمطلوب هو حاصل ضرa × b والتكرار لكل الخلايا

اللى حاصل انة بيجيب حاصل ضرب الخليتين لكن بدون تكرار لباقى الخلايا

السؤال الثانى : ازاى الكود يشتغل بمجرد فتح ملف الاكسل وليس بالنقر فوق ماكرو

Book1.rar

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

السلام عليكم

إستبدل الـ 1 في الكود بالـ i

في المواضع التالية بالأحمر

وإحفظ الكود في حدث الملف وليس الورقة

وغير إسم الكود ليكون Auto_open()

أنظر المرفق

إمسح البيانات في العمود C

ثم إحفظه وإعد فتحه ، سيعمل الكود أوتوماتيكيا

Book1_2.rar

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

السلام عليكم ورحمة الله

اخى الكريم "ahmadhamooor" الف الف شكر على كجهزدك وحلك الرائع ولكن الكود صراحة جميل لكنة صعب على المبتدئين امثالى

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("b1:b5000")) Is Nothing Then

On Error Resume Next

Target.Offset(0, 1).Value = Target.Offset(0, -1).Value * Target.Value


End If

End Sub

يحتاج الى شرح من حضرتك

اخى الكريم "tareqm"حل ولا اسهل منه لكن لو تكرمت علية وتقولى ازاى احفظ الكود فى حدث الملف وليس الورقة

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

الاخ mrastra

عذرا لم انتبه انه يوجد كود بالملف

لذلك اعتقدت انك تريد طريقه للضرب في حاله الملف يكون شغال

فوضعت لك الكود

شكرا لك استاذ طارق على مرورك الجميل

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

اخي الكريم

بالنسبة للشق الثاني من السؤال وهو طريقة وضع الكود في حدث الملف وليس في حدث الصفحه

حيث ان المكان الذي كان به الكود الذي ارسلت الملف الاول بخصوصه كان في حدث الصفحه

وما وضعته اخي العزيز طارق موجود في حدث الملف ، وهو باختصار في المكان الفارغ في VBE تحت مسميات SHEETS كليك يمين وتختار INSERT MODUELS

وتكتب به الكود، ولا يعمل الا اذا اغلقت الملف وفتحته مره اخرى( واقصد هنا الكود المرسل من اخي طارق)

اما ما ارسلته انا فهو في حدث الصفحه حيث انه يعمل والملف مفتوح حيث ان النتيجه تتغير تلقائيا بمجرد وضع القيمه في عمود A و عمود B

اما الشق الاول من السؤال فهو باختصار

المدى المختار هو في العمود B

TARGET.OFFSET(0,1).VALUE والمقصود هنا ازاحة سطر واحد الى اليمين ( والقصود هنا العمود C)

TARGET.OFFSET(0,-1).VALUE والمقصود هنا ازاحة سطر واحد الى اليسار( والمقصود هنا العود A)

TARGET.VALUE والمقصود هنا البقاء في نفس العمود ( والمقصود هنا العمود B)

TARGET.OFFSET(0,1).VALUE=TARGET.OFFSET(0,-1).VALUE*TARGET.VALUE

اعتذر منك ممكن شرحي ما يكون واضح كثيرا

ولكن الموضوع يحتاج منك مزيد من الجهد

والمنتدى ملئ بالشروحات الخاصه بالاكواد والمعادلات وغيرها الكثير

حياك الله

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

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