الأستاذ / محمد الدسوقى قام بنشر يناير 28, 2017 قام بنشر يناير 28, 2017 الأخوة الكرام أعضاء المنتدى السلام عليكم ورحمة الله وبركاته ************************************** من فضلكم اريد كود لتصدير كافة الشهادات بصيغة pdf إلى نفس مسار الملف فقد جربت كود بسيط فى المرفق ولكن بقوم بتصدير الـ 21 شهادة الظاهرة عند الطباعة فقط فرجاء تعديل الكود ليقوم بتصدير كافة الشهادات رجاء آخر : كود لطباعة كافة الشهادات مرة واحدة . أو ـ لطباعة عدد محدد من الشهادات كما بالشرح داخل المرفق ************************************** عـــــــذرا إذا كنت أثقلت عليكم ************************************** زادكـــم الله علمًا وجعله سبيلا لكم إلى الجنة طباعة كافة الشهادات وتصديرها pdf.rar
ياسر خليل أبو البراء قام بنشر يناير 28, 2017 قام بنشر يناير 28, 2017 وعليكم السلام أخي العزيز محمد الدسوقي في الحقيقة سأتناول نقطة واحدة فقط في الموضوع ، وهي تصدير الشهادات كلها إلى ملف PDF رابط الملف من هنا 3
ياسر خليل أبو البراء قام بنشر يناير 30, 2017 قام بنشر يناير 30, 2017 وجزيت خيراً أخي الكريم ناصر بمثل ما دعوت لي وزيادة
الأستاذ / محمد الدسوقى قام بنشر يناير 30, 2017 الكاتب قام بنشر يناير 30, 2017 بارك الله فيك أستاذى الجليل / ياسر وجزاك الله عنا خيرا كثيرا تعجز مفردات اللغة عن تقدير مدى شكرى وامتنانى لشخصكم الكريم بفضل الله ونعمته .. الكود شغال 100 % والحمد لله جعله الله فى ميزان حسانتك 1
ياسر خليل أبو البراء قام بنشر يناير 30, 2017 قام بنشر يناير 30, 2017 الحمد لله أن تم المطلوب على خير والحمد لله الذي بنعمته تتم الصالحات تقبل وافر تقديري واحترامي
محمود_الشريف قام بنشر يناير 30, 2017 قام بنشر يناير 30, 2017 أستاذى القدير // ياسر خليل جميل جدا ها الكود وعجبتنى فكرته المرتبطة بتصدير الشهادات لشيت اكسل مجمع ومنه الى PDF جزيتم عنا خير الخير وسلمتم من كل سوء 1
ياسر خليل أبو البراء قام بنشر يناير 30, 2017 قام بنشر يناير 30, 2017 بارك الله فيك أخي الحبيب محمود وجزيت خيراً مشكور على مرورك العطر بالموضوع ، والحمد لله أن نالت الفكرة إعجابك تقبل تحياتي 1
الأستاذ / محمد الدسوقى قام بنشر يناير 30, 2017 الكاتب قام بنشر يناير 30, 2017 بارك الله فيك أستاذى الجليل / ياسر وجزاك الله عنا خيرا كثيرا و أتمنى تمام الفائدة لهذا الموضوع لـــو تكرمتم بكود للطلبين الآخريين ( معلش أنا طماع ، ولكن الطمع فى العلم محمود ) وهما 1 ـ كود سريع لطباعة كافة الشهادات مرة واحدة بالطريقة العادية ( مش تصدير pdf ) 2 ـ كود لطباعة عدد محدد من الشهادات ( من .... إلى .... باستخدام فورم ) وبذلك يكون لدينا موضوع متكامل عن طباعة الشهادات بشتى الطرق أظن أنا تعبتك معايا أوى أخى و أستاذى الجليل / ياسر
محمود_الشريف قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 أخى الكريم وبعد اذن أخى الحبيب وأستاذى // ياسر خليل تجد بالمرفقات طباعه الشهادات من خلال فورم ( من : الى ) وبالنسبة لطباعة الشهادات كافة ( يوجد بالمنتدى هذا الكود الأكثر من رائع وعلى ما أعتقد لا يوجد مثله بالمنتدى ) وهو للعلامة القدير أستاذى // عبد الله باقشير أنا أتذكر اسم الملف ( كنترول رائع ) ولا أتذكر اسم الموضوع كل المطلوب منك تغيير النطاق وتحديد الأعمدة به ليتناسب مع مطلبك Certificates By Form MZM_ELSHRIEF.rar 1
ياسر خليل أبو البراء قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 اخي الحبيب محمد الدسوقي أنت قديم بالمنتدى وتعرف الشروط ، الأفضل دائماً أن يكون هناك طلب واحد لكل موضوع حتى يسهل على الباحث فيما بعد أن يجد بغيته فيما يخص طباعة كل الشهادات مرة واحدة يمكن الاعتماد على نفس الكود ، حيث يتم تصدير كافة أوراق العمل إلى مصنف جديد قم بإضافة سطر يطبع المصنف الجديد بالكامل ..يمكن الحصول عليه بتسجيل ماكرو لتعرف كيف يمكنك طباعة مصنف بالكامل ، وتقوم بحذف السطر الذي يقوم بعملي التصدير .. وأعتقد الفكرة كافية جداً أما فيما يخص الفورم : فإذا حضر الماء بطل التيمم ، قام أخونا الغالي محمود بالأمر وتقبلوا وافر تقديري واحترامي أخي الحبيب محمود بعد الإطلاع على الفورم الجميل الذي قمته بعمله ، رأيت سطر الحلقة التكرارية بهذا الشكل For end_p = 1 To Page_p لما لا تبدأ الحلقة التكرارية بقيمة المتغير FromS بشكل مباشر وتنتهي بالمتغير ToS ، وفي هذه الحالة لن يكون هناك داعي لهذا السطر FromS = FromS + 1 حيث ستكون قيمة العداد في الحلقة التكرارية تساوي Froms ، ومن ثم يتم تعديل المتغير في هذا السطر Range("MZM_P_C") = FromS ليكون بهذا الشكل Range("MZM_P_C") = end_P وأيضاً لن يكون هناك داعي في هذه الحالة لهذين السطرين Page_p = ToS - FromS + 1 end_p = 0 تقبل وافر تقديري واحترامي 1
ياسر خليل أبو البراء قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 يمكن أن يكون بهذا الشكل في النهاية Private Sub CommandButton1_Click() Dim fromS As Integer, toS As Integer, end_p As Integer fromS = TextBox1.Value toS = TextBox2.Value If fromS > toS Then MsgBox "تأكد من الإدخالات" Else For end_p = fromS To toS Range("O1").Value = end_p Sheets("Certificates").PrintOut Copies:=1, Collate:=True Next end_p TextBox1 = "": TextBox2 = "" MsgBox "تمت الطباعة المحددة" End If End Sub Private Sub CommandButton2_Click() MZM_CERTIFICATES.Hide End Sub أحب الإعلان عن المتغيرات (يعتبرها المبرمجون عادة حسنة) ..أرجو ألا تنزعج من مناقشتي للكود ، فإنني إذا أعجبني كود أحب دراسته بشكل مفصل تقبل تحياتي 2
محمود_الشريف قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 أخى الحبيب وأستاذى // ياسر خليل أسلوبك فى إيصال المعلومة بأكثر من شكل للوصول للهدف بدقة ومن نقاشكم وحواركم فى تحليل الكود يجعلنى أستفيد أكثر ويفيد من يرغب فى التعلم جزيتم عنى خير الخير ونسأل الله لكم أن يزيدكم من فضله ومن علمه تقبل منى وافر الاحترام والتقدير 1
ياسر خليل أبو البراء قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 بارك الله فيك وجزاك الله خيراً أخي الغالي محمود لكم أسعدني تقبلك للمناقشة ، فبالمناقشة يستفيد الجميع ( أنا وأنت وصاحب الموضوع وكل من يطلع عليه ، فالاستفادة تكون عامة) تقبل اللهم منا ومنكم صالح الأعمال 1
محمود_الشريف قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 أخى الحبيب وأستاذى // ياسر خليل جزيتم عنى خير الخير ، وزادكم الله من نعمه أخى الكريم الأستاذ / محمد تجد بالمرفقات ملف به طباعه جميع الشهادات ومسح الشهادات وجمد قلبك وإضغط على مسح ومتقلقش، وتحويل أى شيت الى PDF أو أى نطاق الى PDF أو كامل المصنف الى PDF ممكن بعد إصدار أمر طباعة الكل يمكنك تحويل شيت الشهادات الى PDF All Certificates print_ FORM OR ALL OR PDF _By _MZMELSHRIEF.rar 2
ناصر سعيد قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 6 ساعات مضت, محمود_الشريف said: أخى الحبيب وأستاذى // ياسر خليل جزيتم عنى خير الخير ، وزادكم الله من نعمه أخى الكريم الأستاذ / محمد تجد بالمرفقات ملف به طباعه جميع الشهادات ومسح الشهادات وجمد قلبك وإضغط على مسح ومتقلقش، وتحويل أى شيت الى PDF أو أى نطاق الى PDF أو كامل المصنف الى PDF ممكن بعد إصدار أمر طباعة الكل يمكنك تحويل شيت الشهادات الى PDF All Certificates print_ FORM OR ALL OR PDF _By _MZMELSHRIEF.rar ملف ولاأروع منه وسيزداد حسنا وفائده عند شرح اسطره ... لماذا ؟ حتى يستفيد منه الاخرون في ملفاتهم وحتى يستطيعوا نقل الكود مع التغييرات المطلوبه في ملفهم فيعمل الكود معهم في ملفهم
الأستاذ / محمد الدسوقى قام بنشر يناير 31, 2017 الكاتب قام بنشر يناير 31, 2017 (معدل) أخى و أستاذى الجليل / ياسر خليل اشكرك شكرا جزيلا على نصائحك الغالية وبالفعل جارى استخدام كود تصدير الشهادات مع التعديل عليه ليصلح لطباعة الشهادات جعله الله في ميزان حساناتك ************************************************* أخى الكريم الأستاذ / محمود_ الشريف أشكرك شكرا جزيلا على هذه الأكواد الرائعة التي أضفت على الموضوع الكثير من العلم والخبرة وجارى تجربة هذه الأكواد جميعها على ملفات أخرى ( وإن كانت هذه الأكواد في حاجة إلى مزيد من الشرح حتى نتمكن من إجراء بعض التعديلات حتى تتوافق مع الملفات الأخرى ) وبذلك يكون قد اكتمل موضوع الطباعة بأكثر من شكل وكذلك تصدير كافة الأوراق أو الأوراق المحددة إلى صيغة Pdf فجزاكم الله خيرا وجعل ذلك في موازيين حسناتكم إنه ولى ذلك والقادر عليه تم تعديل يناير 31, 2017 بواسطه الأستاذ / محمد الدسوقى
ناصر سعيد قام بنشر يناير 31, 2017 قام بنشر يناير 31, 2017 الاستاذ محمد الدسوقي بارك الله لك .. نرجو اشتراكك في هذا الموضوع
محمود_الشريف قام بنشر فبراير 1, 2017 قام بنشر فبراير 1, 2017 فيما يختص بشرح كود طباعة الشهادة ' بدء الكود بتحديد النطاقات الثابة ' const تستخدم لتحديد الثوابت ' اسم ورقة الشهادات Const ShName As String = "Certificates" ' رقم اول صف للشهادة Const FirstRow As Integer = 6 ' عدد صفوف الشهادة Const CountRow As Integer = 17 'عدد اعمدة الشهادة التي تريد اظهارها في الطباعة Const CountColumn As Integer = 17 ' خلية موقع الطالب لمعادلات الشهادة Const Range_Index As String = "A6" ' اسم ورقة البيانات Const Sh As String = "Data" ' نطاق الاسماء في ورقة البيانات Const MyNSearch As String = "C5:C44" ' الخلية التى بها عدد كل الطلاب تجدها بشيت الشهادة Const CountAll As String = "E1" ' متغيرين نعلن عنهم Dim MZM_Test As Boolean Dim MySheet As Worksheet Sub MZM_ALL() ' إيقاف تحديث الشاشة Application.ScreenUpdating = False ' استدعاء الكود MZM_ClearContents With MySheet ' اسم النطاق الثابت المعلن عنه سابقا (Range_Index)خلية موقع الطالب لمعادلات الشهادة .Range(Range_Index).Value = 1 ' استدعاء عمل الكود التالى مع الأخذ فى الاعتبار الثابت الذى قمنا بتعريفة وهى الخلية التى عدد اجمالى الطلاب Call MZM_Test_Fill(.Range(CountAll)) ' اذا كان المتغير المعلن عنه بأول الكود به بيانات بناء على خلية معادله الشهادة تم تنفيذ المطلوب مع استدعاء الكود بالسطر السابق اذن يتم تطبيق التالي ' يتم مسح النطاق للكتابه فيه مع عرض الطباعة If MZM_Test Then .PrintPreview Else .Range(Range_Index).ClearContents End With ' اعادة تحديث الشاشة Application.ScreenUpdating = True End Sub Sub MZM_Delete() ' إيقاف تحديث الشاشة Application.ScreenUpdating = False ' استدعاء عمل الكود التالى MZM_ClearContents ' اعادة تحديث الشاشة Application.ScreenUpdating = True ' حفظ العمل واظهار رسالة تفيد ذلك ThisWorkbook.Save MsgBox "تم مسح الشهادات وحفظ نطاق عمل الشهادة الرئيسية", vbMsgBoxRight, "الحمد لله الذى بنعمته تتم الصالحات" End Sub Sub MZM_ClearContents() ' متغير نعلن عنه Dim T As Long ' تخصيص متغير أعلن عنه سابقا Set MySheet = Sheets(ShName) With MySheet ' خلية موقع الطالب لمعادلات الشهادة وهو من الثوابت المعلن عنها سابقا يتم المسح مع الحفاظ على النموذج ( الشهادة الرئيسية) الذى يستخدم للنسخ كما هو .Range(Range_Index).ClearContents T = .UsedRange.Rows.Count .Rows(FirstRow + CountRow).Resize(T).Delete ' نطلب منه الوقوف على الخلية التى تم الاعلان عنها كثابت وهى خلية موقع الطالب لمعادلات الشهادة Application.GoTo .Range(Range_Index), True End With End Sub ' الكودين التاليين يختصوا بنسخ نطاق الشهادة بما فيها من معادلات وتنسيق مع رسالة توضح اذا كان لا يوجد معادلات Sub MZM_Test_Fill(MyCel As Range) If IsNumeric(MyCel) And MyCel.Value > 0 Then MZM_Test = True If MyCel.Value <> 1 Then Call MZM_AutoFill(MyCel.Value) Else MZM_Test = False MsgBox MyCel.Offset(0, -1) & Chr(10) & Chr(10) & MyCel, 524288 + 1048576 + 16, "بيانات غير متوفرة" End If End Sub Sub MZM_AutoFill(R As Integer) Dim SourceRange As Range, fillRange As Range Dim RR As Long RR = (R * CountRow) With MySheet Set SourceRange = .Rows(FirstRow).Resize(CountRow) Set fillRange = .Rows(FirstRow).Resize(RR) SourceRange.AutoFill fillRange, xlFillDefault .PageSetup.PrintArea = .Range("B" & FirstRow).Resize(RR, CountColumn).Address End With End Sub 3
ناصر سعيد قام بنشر فبراير 1, 2017 قام بنشر فبراير 1, 2017 المحترم استاذ محمود الشريف جزاك الله خيرا وبارك فيك ..
ناصر سعيد قام بنشر فبراير 1, 2017 قام بنشر فبراير 1, 2017 هل يمكن بدل ان نطبع كل الشهادات .. نطبع فقط شهادات الناجحين جزاكم الله خيرا
محمود_الشريف قام بنشر فبراير 1, 2017 قام بنشر فبراير 1, 2017 أخى الكريم الأستاذ // ناصر سعيد سنضيف على مثال الأستاذ // محمد الدسوقى تجد انه تم وضع فى خليه E1 عدد الطلاب كاملا سنضع بالخلية D2 كلمة ناجح وبالخلية المقابلة لها E2 عدد الناجحين يمكن ذلك سنضع فى الكود من ضمن جزئيات الثوابت خلية عدد الناجحين وخليه كلمة ناجح ونحدد نطاق الناجحين بشيت البيانات وهو العمود الذى يسجل فيه كلمه ناجح أو راسب أو دور ثان وسنضيف بالكود كود طباعه الناجحين وربطه بزر طباعه الناجحين فقط وسيكون كالتالى ' نطاق ناجح في ورقة البيانات بإفتراض أن هذا العمود المسجل بالكود هو من يحدد ناجح أو راسب ونسميه مثلا MYND Const MyND As String = "D4:D44" ' خلية عدد الناجحين Const CountNA As String = "E2" ' كلمة البحث عن الناجحين ونسميها مثلا NA_G Const NA_G As String = "ناجح" Sub الناجحين() Application.ScreenUpdating = False MZM_ClearContents With MySheet Call MZM_Test_Fill(.Range(CountNA)) If MZM_Test Then Call MZM_Nd(NA_G): .PrintPreview End With Application.ScreenUpdating = True End Sub 1
ناصر سعيد قام بنشر فبراير 2, 2017 قام بنشر فبراير 2, 2017 جزاك الله كل خير استاذ محمود الشريف من فضلك ضع مرفقا
محمود_الشريف قام بنشر فبراير 2, 2017 قام بنشر فبراير 2, 2017 أخى الكريم الأستاذ // ناصر تم إضافة المطلوب ( طباعه الكل & طباعه ناجح & طباعة راسب ) على نفس نموذج الأستاذ // محمد All Certificates print_ FORM OR ALL OR PDF _By _MZMELSHRIEF+PR_N_R.rar 3
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.