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

هل من شرح لعمل زر طباعة كافة الشهادات


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

كيف يمكن عمل زر طباعة كافة الشهادات لأنه كل ما أحاول أعمله ما ينفّذ معي ويبقى يطبع شهادات للاسم الأول فقط

فيرحمكم الله

كم أنا بحاجة ملحّة لشرح عمل زر طباعة كافة الشهادات

من منكم يضع لنا الشرح وأجره على الله

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

http://www.officena.net/ib/index.php?showtopic=29044&st=0&p=142626&fromsearch=1&#entry142626

والملف في المرفق أتمنى من يرفق كيفية عمل الزر طباعة كافة الشهادات

ImpressionCertificat1.rar

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

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

أخي الكريم، كود طباعة كل الشهادات يعمل جيدا ولا توجد أي مشكلة فيه... وأعتقد أن الخطأ عندك في خصائص إكسيل... طريقة الحساب الأوتوماتيكي (الآلي) غير معينة... إفتح قائمة "أدوات Outils Tools" واختر "خصائص Options" ثم "حساب Calcul" واختر "حساب آلي Automatique" ... وإن شاء الله سيعمل الكود جيدا...

وقد جربت الكود وراقبته وتم طبع الشهادين المحجوزتين في القاعدة...

أخوك "بن علية"

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

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

أخي الكريم، كود طباعة كل الشهادات يعمل جيدا ولا توجد أي مشكلة فيه... وأعتقد أن الخطأ عندك في خصائص إكسيل... طريقة الحساب الأوتوماتيكي (الآلي) غير معينة... إفتح قائمة "أدوات Outils Tools" واختر "خصائص Options" ثم "حساب Calcul" واختر "حساب آلي Automatique" ... وإن شاء الله سيعمل الكود جيدا...

وقد جربت الكود وراقبته وتم طبع الشهادتين المحجوزتين في القاعدة...

أخوك "بن علية"

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

أخي الحبيب hben

شكرا على تفاعلك معي ولك مني أجمل تحية

ولكن هل لك أن تضع لنا شرحا ولو موجزا عن الطريقة التي قمت بها لعمل الزر

ولو أني أثقلت عليك بكثرة استفساراتي

يرحمك الله

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

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

والله أخي الكريم نحن في الخدمة ما اسطعنا لذلك سبيلا... إن الكود الذي وضع لطباعة الشهادات هو من أبسط الأكواد...

تلاحظ أولا أن الشهادة استعملت فيها على الخصوص الدالة VLOOKUP أو RECHERCHEV التي تعتمد على قيمة الخلية B2 في ورقة "الشهادات" التي تمثل فيها "قيمة البحث" في قاعدة البيانات... والكود يقوم ببساطة بتغيير هذه القيمة تصاعديا من القيمة الموجودة في الخلية B1 (ووضعنا فيها 1) إلى القيمةالموجودة في الخلية C1 (التي وضعنا فيها القيمة الكبرى للعمود A:A من قاعدة البيانات للدلالة على آخر رقم للطلاب أو رقم الطالب الأخير في القائمة)... وكل ما يقوم هذا الكود بتغيير قيمة الخلية B2 يقوم مباشرة بطبع الشهادة المقابلة لهذه القيمة (وهي الرقم التسلسلي للطالب)...

نلقي نظرة إلى الكود ونشرحه خطوة خطوة:

Dim i As Integer

إعلان لمتغير سميناه I

Sheets("الشهادات").Select

لفتح ورقة "الشهادات" المراد طبعها

For i = Range("b1") To Range("c1")

مجال تغيير قيمة المتغير I من قيمة الخلية B1 إلى قيمة الخلية C1

Range("b2") = i

وضع قيمة I في الخلية B2 (التي تقوم بتغيير المعلومات في الشهادة بوساطة الدالة VLOOKUP)

If i <= Range("c1") Then

شرط مواصلة عمل الكود "إذا كانت قيمة I أصغر من أو تساوي مضمون الخلية C1 يقوم الكود بالخطوة التالية وإذا لم يكن يتوقف الكود End Sub)

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

الخطوة التي يقوم بها الكود إذا كان الشرط السابق محققا) وتتمثل في طباعة الشهادة

End If

توقف الكود عن الطباعة (مؤقتا)

Next i

تغيير قيمة I إلى القيمة الموالية ومواصلة عمل الكود بالطريقة نفسها (يغير ويطبع) إلى أن تصل قيمة I إلى قيمة الخلية C1

Sheets("إدخال").Select

العودة إلى ورقة "إدخال" الورقة الرئيسية عند الانتهاء من طبع كل الشهادات

End Sub

أرجو أن يكون هذا الشرح مستوفيا... وليس عندي ما أقوله غير هذا... وأتمنى أن يصحح إخوتي من عباقرة المنتدى الأخطاء في شرحي

أخوك دائما "بن علية"

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

بارك الله بك وجعله الله في ميزان حسناتك

فعلا شرحا وافيا وكافيا

ولك كل الشكر والاحترام hben

بقيت مسألة بسيطة لو تكرمتم

كيف نجعل القيمة في b1 , c1 مخفية في شيت الشهادات؟

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

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

بالنسبة لجعل مضمون الخلايا B1 و C1 (وحتى الخلية B2) مخفيا أو غير ظاهر، هذا أمره بسيط، يكفي أن نغير لون الخط في الخلايا المعنية إلى اللون الأبيض (لون الخط مثل لون النقش في الخلايا)

أخوك "بن علية"

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

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

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

Important Information