اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

هل يمكن عمل اكثر من ناحية طباعة فى ورقة الاكسل


lord

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

الكود التالي ينفذ لك ما طلبت .. أتمنى أن يحوز على إستحسانك.

Sub MyPrint2()

On Error GoTo Ali
Application.ScreenUpdating = False
ActiveSheet.Rows.Hidden = False

If Sheet1.ComboBox1 = Sheet1.[I16] Then ActiveSheet.PrintOut
If Sheet1.ComboBox1 <> Sheet1.[I16] Then
For A = 7 To 100
BR = ActiveSheet.Cells(A, 6)
If BR <> Sheet1.ComboBox1 Then
Rows(A).Hidden = True
ActiveSheet.PrintOut
End If
Next
Rows("38:39").Hidden = False
Rows("52:53").Hidden = False
End If
Application.ScreenUpdating = True

Ali:
If Err <> 0 Then
MsgBox "لا يوجد طابعة مرتبطة بهذا الجهاز!", vbCritical, "عفواً"
ActiveSheet.Rows.Hidden = False
End If

End Sub

Print.rar

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

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

كل عام والجميع بخير

استاذى الفاضل

شكرا على هذا الملف

لكن يوجد لى بعض المطالب الهامة يمكن ماقدرتش افسرها لك فى اول المشاركة

1 - اريد طباعة كل نطاق فى ورقة مستقلة

2 - بالنسبة للهد يطبع مع كل ورقة

3 - ممكن شرح اماكن النطاقات بالكود ( حتى يمكن زيادة المدى اذا تطلب الامر ذلك )

عشمى كبير فى فى حل هذا الموضوع

وكل عام وانت والجميع بخير

بمناسبة حلول شهر رمضان المبارك

اعاده الله عليك وعلى الجميع بالخير واليمن والبركات

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

تم إضافة جميع ما طلبت، شاهد المرفق،

______________________________.rar

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

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

تحياتى لك استاذنا الغالى

:clapping: فعلا استاذ بدرجة امتياز

رجاء شرح الكود الاول من الاول

[if Sheet1.ComboBox1 = Sheet1.[i15] Then ActiveSheet.Rows.Hidden = False

ماذا تعنى ( i15 )If Sheet1.ComboBox1 <> Sheet1.[i15] Then

وكذلك

For A = 6 To 1000

هل هذا هو مدى الترقيم التلقائى

BR = ActiveSheet.Cells(A, 6)

يبداء من a6

ActiveWindow.SmallScroll Down:=-100

وكذلك هذا الجزء 100-

علما باننى نقلت الكود الى الملف الاصلى وكانت المشكلة ( كيف انقل ( الكومبوكس) الذى سوف اختار منه الدرجة وشكرا

وكل عام وانت بخير

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

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

If Sheet1.ComboBox1 = Sheet1.[I15] Then ActiveSheet.Rows.Hidden = False
هذا الجزء يقوم بفحص محتوى الخلية I15 في الصفحة الأولى والتي تحتوي على الكلمة (الجميع)، فإذا كانت هي نفسها الكلمة الموجودة في القائمة المنسدلة .. فإنه يتم إظهار جميع الصوف المخفية .. وبذلك يتم عرض جميع النتائج.
If Sheet1.ComboBox1 <> Sheet1.[I15] Then
إذا كان محتوى الخلية I15 غير مساوي للكلمة الموجودة في القائمة المنسدلة فإنه يبدأ عمل الكود بإخفاء جميع الصفوف التي لا تساوي الكلمة الموجودة في القائمة المنسدلة في عمودها السادس.
For A = 6 To 1000
هذا السطر لتحديد أول صوف وآخر صف من الصفوف التي سيعمل عليها الكود.
BR = ActiveSheet.Cells(A, 6)
هنا لفحص محتوى كل خلية في العمود السادس في نطاق الصفوف المشار إليه.
ActiveWindow.SmallScroll Down:=-100

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

وبالنسبة لنقل القائمة المنسدلة أو إنشاء قائمة جديدة .. راجع الرابط التالي:

http://www.officena.net/ib/index.php?showtopic=13038

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

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

مشاء الله ولاقوة الا بالله

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

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

1- LinkedCell

ListFillRange -2

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

( كيف يتم تنفيذ الحدث )

اخى العزيز اطلت عليك

ولكن تمتلك كنوز وانا اريد ان اتعلم ولو جزء بسيط ( بارك الله فيك )

سؤال اخر فى نفس الموضوع السابق شرحه

هل يمكن تنفيذ الكود على جميع اوراق الملف ( اذا تطلب الامر ذلك )

لاننى وجدت بأن يكتب اسم sheet1 فى الكود

ولك جزيل الشكر

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

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

( كيف يتم تنفيذ الحدث )

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

هل يمكن تنفيذ الكود على جميع اوراق الملف ( اذا تطلب الامر ذلك )

نعم يمكن عمل ذلك .. راجع الرابط التالي:

http://www.officena.net/ib/index.php?showtopic=7486

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

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

تحياتى للجميع

شكرا للاستاذنا الفاضل على السحيب

ممكن تكمل معى لكى استفيد اكثر

هل ممكن عدم طباعة الصفحة التى لايوجد بها بيانات

( مثلا لو لايوجد دائمين ( درجة اولى )

ممكن عدم طباعة الصفحة التى لايوجد بها بيانات

بالنسبة للكلمة دائمين أو بالاجر أو باليومية

تتغير تلقائى مع الهد عند الطباعة ( بدلا من تكرار الهد فى كل ناحية طباعة )

وشكرا

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

قمت بتصميم كود الطباعة الجديد ولم أختبره لأن ليس لدي طابعة .. على كل حال جرب الكود وأخبرني .. أتمنى أن ينجح معك،

______________________________.rar

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

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

:clapping: فعلا مايسترو

جربت الكود بالنسبة للهد ويعمل بكفائة

بالنسبة للطباعة سوف اجربها باكر بأذن الله

احببت ان اشكرك سريعا

ولك كل التقدير والاحترام

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

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

تحياتى للجميع

اخى الاستاذ على

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

اما بالنسبة لعدم لطباعة الصفحات الفارغة ( فهو يقوم بطباعة جميع الصفحات حتى لو فارغة )

الاهم عندما اردت تطبيق الكود على الملف كله ( لم يتم مش عارف ايه السبب )

رجاء خاص برجاء تعديل الكود لكى يتم تطبيقه على جميع اوراق العمل

ولك تحياتى

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

  • 3 weeks later...

تم تعديل الكود الخاص بطباعة الصفحات التي تحتوي على البيانات التي تم إختيارها من القائمة المنسدلة.

وهذا هو الكود الخاص بالطباعة:

Sub Pringing()

FP = Application.WorksheetFunction.CountIf([F6:F35], Sheet1.ComboBox1)
SP = Application.WorksheetFunction.CountIf([F39:F53], Sheet1.ComboBox1)
TP = Application.WorksheetFunction.CountIf([F57:F71], Sheet1.ComboBox1)

If FP = 0 And SP = 0 And TP = 0 Then
MsgBox "!لا يوجد بيانات لطباعتها", vbExclamation, "عفـواً"

ElseIf FP = 0 And SP = 0 And TP > 0 Then
ActiveSheet.PrintOut 3, 3

ElseIf FP = 0 And TP = 0 And SP > 0 Then
ActiveSheet.PrintOut 2, 2

ElseIf SP = 0 And TP = 0 And FP > 0 Then
ActiveSheet.PrintOut 1, 1

ElseIf FP = 0 And SP > 0 And TP > 0 Then
ActiveSheet.PrintOut 2, 3

ElseIf SP = 0 And FP > 0 And TP > 0 Then
ActiveSheet.PrintOut 1, 1
ActiveSheet.PrintOut 3, 3

ElseIf TP = 0 And FP > 0 And SP > 0 Then
ActiveSheet.PrintOut 1, 2

End If

End Sub

شاهد المرفق،

______________________________.rar

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

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

تحياتى للجميع

الاستاذ على / مايسترو المنتدى

:clapping: ممتاز ممتاز

هذا ما عودتنا عليه فعلا شىء رائع وجميل

لى طلب بسيط هو اذا اردت ان ازيد عدد النطاقات الى 6 نطاقات هل ممكن وهل sp ,fp, tp هى لتعريف نطاقات الطباعة فى الكود حتى يمكن ان ازيدها فى الكود

ادعو الله لك بالتوفيق والسداد وان يجعل عملك هذا فى ميزان حسناتك

وشكرا

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

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

تحياتى

ماسترو المنتدى / على السحيب

عدلت الكود الاول لكى يتم تطبيقه على جميع الصفحات ورجعت لما اشرت اليه فى مشاركة سابقة ( ولكن لم يعمل )

وهذا ما فعلته

Sub MySort2()

Application.ScreenUpdating = False

With ActiveWorkbook

For Each sh In .Sheets

sh.Select

If sh.Sheets.ComboBox1 = [i15] Then sh.Rows.Hidden = False

If sh.Sheets.ComboBox1 <> [i15] Then

sh.Rows.Hidden = False

For A = 6 To 1000

BR = sh.Cells(A, 6)

If BR <> ComboBox1 Then

sh.Rows(A).Hidden = True

End If

Next

'&aring;&auml;&Ccedil; &Ecirc;&Ouml;&Uacute; &Atilde;&Ntilde;&THORN;&Ccedil;&atilde; &Ccedil;&aacute;&aelig;&Ccedil;&THORN;&Uacute;&Eacute; &Egrave;&iacute;&auml; &Ccedil;&aacute;&Igrave;&Iuml;&aelig;&aacute; &Ccedil;&aacute;&Atilde;&aelig;&aacute; &aelig;&Ccedil;&aacute;&Euml;&Ccedil;&auml;&iacute;

sh.Rows("36:38").Hidden = False

'&aring;&auml;&Ccedil; &Ecirc;&Ouml;&Uacute; &Atilde;&Ntilde;&THORN;&Ccedil;&atilde; &Ccedil;&aacute;&aelig;&Ccedil;&THORN;&Uacute;&Eacute; &Egrave;&iacute;&auml; &Ccedil;&aacute;&Igrave;&Iuml;&aelig;&aacute; &Ccedil;&aacute;&Euml;&Ccedil;&auml;&iacute; &aelig;&Ccedil;&aacute;&Euml;&Ccedil;&aacute;&Euml;

sh.Rows("54:56").Hidden = False

End If

ActiveWindow.SmallScroll Down:=-100

Application.ScreenUpdating = True

End Sub

ارجو الاطلاع علية وافادتى ما يمكن عمله

ولك جزيل الشكر

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

أرسل ملف على إيميلي الموجود في توقيعي .. لكي أجري التعديل اللازم عليه،

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

  • 2 months later...

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