السلام عليكم ورحمة الله وبركاته
عند القيام بربط قاعدة بيانات بالوورد عن طريق دمج المراسلات يتم حفظ المستند بأسم جديد وتنقطع علاقته بقاعدة البيانات.
المطلوب تكون صفحة الوورد مثل التقارير بالاكسس.وشكراً
السلام عليكم ورحمة الله وبركاته
عند القيام بربط قاعدة بيانات بالوورد عن طريق دمج المراسلات يتم حفظ المستند بأسم جديد وتنقطع علاقته بقاعدة البيانات.
المطلوب تكون صفحة الوورد مثل التقارير بالاكسس.وشكراً
السلام عليكم ورحمة الله وبركاته..
الاخ العزيز..يرجى التوضيح...اسم قاعدة البيانات،اسم الجدول،اسماء الحقول، وهل تريد الحقول في جدول....
متاكد سوف تجد المساعدة من الاخوان..
السلام عليكم ورحمة الله وبركاته
أنا جديد على هذا المنتدى ولكن يعلم الله لقد استفدت منه فائده كبيره ، وأتقدم بخالص الشكر للمشرفين والأعضاء وأتمنى التوفيق الدائم للجميع
لقد سبقني الأخ mt بطرح هذا السؤال وهو في غاية الأهمية
بالنسبة لي :
أعددت قاعدة بيانات حول الموظفين ( تقرير الأداء الوظيفي لشاغلي الوظائف التعليمية ) تحتوي على جداول واستعلامات ونماذج ولصعوبة تصميم صفحة التقرير بواسطة تقارير أكسس لأحتوائها مخططات وكتابه طولية وعرضيه وتقسيمات متنوعه استعنت ببرنامج وورد وكل مره أريد أن أطبع لازم أشغل برنامج وورد وأطلب منه دمج المراسلات ثم طباعة الصفحات التي أريدها .
ما أوريده هو :
1- أمر من نافذة النموذج في الأكسس يدمج المراسلات في وورد
2- أمر طباعة مباشرة من النموذج بدون تشغيل الوورد
3- أمر معاينة قبل الطباعة
ملاحظة : صفحة التقرير التي أعددتها هي :
نموذج تقويم الأداء الوظيفي لشاغلي الوظائف التعليمية
وإن كان البرنامج الخاص بذلك جاهز أرجو أرشادي إلى مكان وجوده أو تزويدي بنسخة منه
كلي أمل أن أجد الرد في أقرب وقت
وللجميع خالص الشكر
الأخ المحترف
1- بعد دمجك للمستند قم بحفظه وهكذا لن تحتاج إلى إعادة الدمج في كل مرة ترغب في الدمج .
2- لفتح المستند المدموج فأبسط طريقة رابط تشعبي اختر من قائمة إدراج ارتباط تشعبي ثم انقر زر ملف واختر الملف وفي النص للعرض اكتب عنوان مناسب للرابط التشعبي .
ملاحظة هامة جميع الأكواد التالية تحتاج إلى وضع مرجع للوورد ، اختر Tools ثم References ثم اختر :
Micosoft Word 9.0 Object Library
والرقم حسب الاصدار الذي يوجد عندك .
أو لفتح مستند استخدم الكود التالي :
Dim appWord as Word.Application
Set appWord = CreateObject("Word.Application")
' السطر التالي يتحكم في عرض المستند أو إخفاءه
appWord.Visible = True
strdoc = "c:المجلد اسم المستند.doc"
appWord.Documents.Open Strdoc
Set appWord = Nothing
لعرض بيانات الحقول بدلا من أسماء الحقول ضع السطر التالي قبل السطر الأخير :
appWord.ActiveDocument.MailMerge.ViewMailMergeFieldCodes = wdToggle
ولفتح المستند في معاينة قبل الطباعة ضع السطر التالي قبل السطر الأخير :
appWord.ActiveDocument.PrintPreview
ولطباعته ضع السطر الثاني قبل السطر الأخير :
appWord.ActiveDocument.PrintOut
ولدمج المستند مباشرة مع الطابعة (يعني طباعة كل السجلات) ثم إغلاقه بعد الإنتهاء :
Dim appWord As Word.Application
Set appWord = CreateObject("Word.Application")
appWord.Visible = False
Strdoc = "D:My Documentsاسم المستند.doc"
appWord.Documents.Open Strdoc
With appWord.ActiveDocument.MailMerge
.Destination = wdSendToPrinter
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=True
End With
appWord.Quit savechanges:=False
Set appWord = Nothing
ولدمج المستند في مستند جديد :
Dim appWord As Word.Application
Set appWord = CreateObject("Word.Application")
appWord.Visible = False
Strdoc = "D:My Documentsاسم المستند.doc"
appWord.Documents.Open Strdoc
With appWord.ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=True
End With
' السطر التالي إذا كان عدد الصفحات كبيرا فيجب إزالته ووضع زر أو طريقة كحدث في المؤقت لإغلاق الوورد ، لأنه ينهي الوورد قبل إكتمال الطباعة وإذا أزلت العبارة savechanges:=False من آخر السطر تظهر رسالة لتنبيه المستخدم أن إغلاق الوورد حاليا ينهي كافة عمليات الطباعة وإذا اختار لا يتم إكمال الطباعة ولكن دون إغلاق المستند الجديد أو مستند الدمج .
appWord.Quit savechanges:=False
Set appWord = Nothing
ولطباعة المستند الجديد السابق ضع قبل السطرين الأخيرين :
appWord.ActiveDocument.PrintOut
ولتحديد عدد السجلات المطلوب طباعتها غير :
.FirstRecord = wdDefaultFirstRecord
الموجودة في الأسطر السابقة إلى :
.FirstRecord = رقم البداية
و
.LastRecord = wdDefaultLastRecord
إلى
.LastRecord = رقم النهاية
يتبقى علينا مشكلتين ظهور إطار الطابعة وإغلاق قاعدة البيانات المصدر بعد الإنتهاء .
وحل المشكلة الأولى عند الدمج في مستند جديد :
عند الدمج في مستند جديد استبدل السطر
appWord.ActiveDocument.PrintOut
بالتالي :
appWord.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
wdPrintDocumentContent, Copies:=1, Pages:="", PageType:=wdPrintAllPages, _
Collate:=True, Background:=True, PrintToFile:=False, PrintZoomColumn:=0, _
PrintZoomRow:=0, PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0
أما إذا تم الدمج الى الطابعة مباشرة فلم أتوصل إلى شيء مع الانتباه إلى ظهور رسالة خطأ إذا اختار المستخدم إلغاء الأمر .
أما المشكلة الثانية فكذلك لم أتوصل فيها إلى حل وسأحاول أن أجد حل مناسب .
مع ملاحظة أنه يمكنك عمل تصفية أو فرز على السجلات عن طريق نقر زر دمج على شريط الأدوات ثم زر خيارات الاستعلام .
ولك تحياتي
الأخ أبو حمود
ألف شكر على الرد السريع والتوضيح الوافي جعل الله ذلك في موازن أعمال وجزاك عنا ألف خير .
سأجرب ماذكرت وأنا متأكد من نجاحها بإذن الله
جزاكم الله خيروجعلهاالله في ميزان حسناتكم جميعاً واعذروني على التأخير خاصة الاخ سين ميم لكن خارج عن ارادتي الانقطاع.
الأستاذ حارث كما وجدت فإن الأستاذ أبو حمود أجاد في هذا المثال أرجو منك إن أمكن أن تحول الكود إلى ملف MDB وربطه أظن أن ذلك أوضح للمثال وإنني أظن فيك الكفاءة المطلوبة لذلك وشكرا لأستاذنا أبو حمود وكل المشاركين في هذا المنتدى الرائع وشكرى الخاص للأستاذ حارث
الأخ محسن : سأحاول ذلك قريبا إن شاء الله ، لأن الموضوع من شكله يحتاج وقت ، وشكرا لإحسانك الظن .
الأخ أبو حمود :
حاولت تطبيق ما ذكرته من الأكواد ، لكن لدي إشكالات لعل سببها عدم فهمي التام للموضوع ، وقد أرسلت لك المثال ، فإن لم يشق عليك أرجو التفضل بالتعديل عليه ، لطرحه هنا للفائدة ، ولك جزيل الشكر .
تنبيه نسيت الإشارة إليه في الرسالة : وضعت قاعدة البيانات وملفي الوورد المرفقين في مجلد اسمه H_word في My Documents في الهاردسك c .
الإخوة الأفاضل : تجدون في الوصلة التالية طريقة بسيطة بدون أكواد للتعامل مع الوورد من قاعدة بيانات أكسس ، وأظن معظم رواد هذا المنتدى على علم بها :
(انقر بالزر الأيمن واختر حفظ الهدف باسم) :
http://mypage.ayna.com/harith55/word.zip
وفق الله الجميع
الاخ حارث الوصلة لاتعمل اعتقد اني حضرت متأخر على العموم اذا تكرمت ارسلها على العنوان mutlq@yahoo.com وجزاك الله خير .
الأخ mt
أرسلت المثال على بريدك . ويمكنك محاولة تنزيله مرة أخرى من الوصلة السابقة بالنقر بالزر الأيمن واختيار حفظ الهدف باسم ، أو فتح الصفحة http://mypage.ayna.com/harith55 واختيار word.zip
وفقكم الله
الإخوة الأفاضل : لدي ملاحظة من ناحية التحميل : وهي أني عند استخدامي برنامج ٌRealDownload لا أواجه أي مشاكل في التحميل ، فبمجرد النقر على الوصلات يبدأ التحميل ، فهل الأمر كذلك عند بقية الإخوة الذين يستخدمونه ؟
الطريقة باختصار شديد هي :-
- إظهار شريط قاعدة بيانات في الورود عن طريقة عرض - اشرطة ادوات - قاعدة بيانات .
- ثم الضغط على زر إدراج قاعدة بيانات .
- ثم تحديد الجدول أو الاستعلام الذي تريد أدراج بياناته
- ثم الضغط على زر إحضار البيانات وتختاز خانة ( إدراج البيانات كحقل )
- بعد ذلك يمكنك الضغط على زر تحديث في الشريط المذكور عند فتح المستند لتحديث البيانات المدرجة به .
وبالتوفيق .
شكرا جزيلا للأخوين أبو حمود و حارث وباقة ورد وياسمين على صدور الأخوة المشاركين بالمنتدى و إن شاء الله أعد لكم إسهامات أرجوا أن تنال رضاكم
شكرا جزيلا لكل من شارك في الموضوع
الأخ الغريب شرح الطريقة من داخل وورد وهي معروفه بالنسبة لنا ولابد من إجراءها أول مره - ولكن ما أوريده هو أن أفتح وورد بعدها من خلال برنامج أكسس وقد تم دمج الملفات تلقائيا بعد إعداده وربطه أول مره من خلال برنامج وورد
أرجو أن يكون سؤالي واضحا .
الاخ ابو حمود بارك الله فيك
عندما وضعت الكود الخاص بدمج المستند بالطابعة تظهر لي هذ الرسالة

والسطر المضلل هو
Strdoc = "d:mydocاسم المستند
وجدت هذا الموضوع اتمنى ان يفيدك
السلام عليكم و رحمة الله و بركاته
الأخ حارث أو الأخ Mt أو أي ممن أنزل الوصلة الخاصة بملف Word.zip
هل يمكن تجديد و صلة الملف او نشره ثانية حيث أن هذه هي الوصلة الوحيدة فى الصفحة التي لا تعمل
و جزاكم الله خيرا
الوصلة تعمل جرب بالزر الايمن حفظ الهدف باسم( اكثر من مرة).
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…