smart قام بنشر يناير 21, 2005 مشاركة قام بنشر يناير 21, 2005 السلام عليكم سؤالي عمل زر ماكرو للطباعة ولكن يكون مربوط بخلية محددة داخل الشيت بحيث يتم طباعة أوراق بنفس العدد المكتوب فيها ارجو أن أكون واضحا في نقل رسالتي لكم عندي ورقة عمل كبيرة و لا أود طباعة جميع أوراقها فعن طريقة الدالة قمت بتحديد عدد الأوراق التيس يوجد بها (بيانات) وهي المطلوب طباعاتها فكيف أحدد زر ماكرو بحيث يقوم بطابعة العدد الموجود في تلك الخلية وكل عام وأنتم بخير رابط هذا التعليق شارك More sharing options...
محمد حجازي قام بنشر يناير 21, 2005 مشاركة قام بنشر يناير 21, 2005 السلام عليكم ... جرب الكود التالي : Sub PrintPages() NumberPages = InputBox("أدخل عدد الصفحات التي تريد طباعتها", "طباعة") Worksheets(1).PrintOut From:=1, To:=NumberPages, Copies:=1, Collate _ :=True End Sub رابط هذا التعليق شارك More sharing options...
محمد حجازي قام بنشر يناير 21, 2005 مشاركة قام بنشر يناير 21, 2005 السلام عليكم ... نسيت أنك تريد كتابة رقم الصفحات المراد طباعتها في خلية محددة ، جرب الكود التالي : Sub PrintPages() Worksheets(1).PrintOut From:=1, To:=Worksheets(1).Range("A1").Value, Copies:=1, Collate _ :=True End Sub مع مراعات كتابة عدد الصفحات في الخلية A1 بالتوفيق رابط هذا التعليق شارك More sharing options...
smart قام بنشر يناير 21, 2005 الكاتب مشاركة قام بنشر يناير 21, 2005 اشكرك أخ محمد على ردك الكود الأول شغال ولكن يجب أن تضع عدد الصفحات المنوي طباعتها فيه الكود الثاني يبدو أن هناك شيئا يحتاج إلى تعديل الرسالة التي يخرجها :حاول ثانية بإدخال رقم ضمن هذا32767 و1 يجب ألأن يتاروح الرقم بين هذا النطاق رغم أني قمت باستبدال الخلية a1 بالخلية المطلوبة k1 ولك مني التحية أبو محمد مع العلم أن نطاق الطباعة للصفحة عندي محدد واسم ورقة العمل سميتها 1 رابط هذا التعليق شارك More sharing options...
smart قام بنشر يناير 21, 2005 الكاتب مشاركة قام بنشر يناير 21, 2005 هناك أمر نسيت أن انبهك له هو خاص بالكود الأول افترض أنك أردت الطباعة وضغطت على زر الطباعة في حال عدم إدخال اي رقم للصفحة فأن البرنامج يعطيك رسالة الخطأ debugأو end فهل من طريقة بأن يتجهال الكود الأمر أذا لم يكن هناك ارقام للصفحات ... رابط هذا التعليق شارك More sharing options...
smart قام بنشر يناير 21, 2005 الكاتب مشاركة قام بنشر يناير 21, 2005 أخ محمد لقد عمل الكود ولكن مع اصراره على الخلية a1 رفم أني قمت بتغييرها فأبقيتها على a1 الغريب أنه يقوم بطباعة صفحات رقم 2 رغم أن الرقم الموجود في a1 وهو 10 رابط هذا التعليق شارك More sharing options...
محمد حجازي قام بنشر يناير 21, 2005 مشاركة قام بنشر يناير 21, 2005 (معدل) السلام عليكم ... بالنسبة للكود فهو شغال عندي ، ولكن يجب الانتباه إلى الملاحظات التالية : - بالنسبة لورقة العمل ، فالرقم 1 يدل على الورقة الأولى في الترتيب وليست الورقة ذات الاسم 1 ، ولتجعل الكود يستند لقيمة الخلية A1 في الورقة Sheet1 مثلاً يجب هنا وضع اسم الورقة بين علامتي تنصيص " " مثل الكود التالي : Sub PrintPages() Worksheets("Sheet1").PrintOut From:=1, To:=Worksheets("Sheet1").Range("A1").Value, Copies:=1, Collate _ :=True End Sub - بالنسبة لطباعة الصفحات ، الكود محدود بالحد الأعلى للصفحات ، أي ما دام التقرير يستوعب صفحتين فقط فإنه سيقوم بطباعة هاتين الصفحتين حتى لو كانت قيمة الخلية A1 تساوي 10 مثلاً - بالنسبة لأسماء الصفحات ، الأول للصفحة المطبوعة و الثاني للصفحة التي تحتوي على الخلية A1 بالنسبة للكود الأول ، فأنا أسعى دائماً للتبسيط تكرم و تفضل الكود : Sub PrintPages() NumberPages = Application.InputBox(prompt:="أدخل عدد الصفحات التي تريد طباعتها", Title:="طباعة", Type:=1) If NumberPages = False Then Exit Sub Else Worksheets(1).PrintOut From:=1, To:=NumberPages, Copies:=1, Collate _ :=True End If End Sub تم تعديل يناير 21, 2005 بواسطه محمد حجازي رابط هذا التعليق شارك More sharing options...
smart قام بنشر يناير 22, 2005 الكاتب مشاركة قام بنشر يناير 22, 2005 سأجرب ولكم منى التحية أخ محمد وكل عام وأنتم بخير رابط هذا التعليق شارك More sharing options...
الردود الموصى بها