Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 17

‫التعامل مع األكسل ‪ 2003‬من خالل الفيجوال بيزك ‪6‬‬

‫األجـــــــــــــــزاء‪: ‬‬
‫انشاء ملف اكسل جديد و حفظه ‪.‬‬ ‫‪.1‬‬
‫فتح و تعديل و حفظ ملف اكسل‬ ‫‪.2‬‬
‫استيراد البيانات من األكسل‬ ‫‪.3‬‬
‫تصدير البيانات الى االكسل‬ ‫‪.4‬‬
‫طباعة االكسل‬ ‫‪.5‬‬
‫بعض الموضوعات الهامه فى التعامل مع الـ ‪ Excel‬من خالل الـ ‪Visual Basic 6.0‬‬ ‫‪.6‬‬
‫مشروع عملى على التعامل مع االكسل‬ ‫‪.7‬‬

‫و نبـــــــــــــــــــــــــــــــــــــــــــــــــدأ بســـــــــــــــــــــــــــــــــــــــــــــــــم هللا الجـــــــــــــــــــــــــــــــــــــــــــــــــزأ األول ‪ ....‬‬

‫الجـــــــــزء األول ‪ -‬انشاء ملف اكسل جديد‬


‫قبــل الشــروع فى انشــاء ملــف ‪ Excel‬جديــد و حفظــه فى مجلــد ‪ Folder‬باســم معين ‪ Save As‬يجب أن نتعــرف على‬
‫جزئين هما ‪:‬‬

‫نظره سريعه على مكونات ‪ : Excel 2003‬انظر الصورة التاليه ‪...‬‬ ‫‪.1‬‬
Quick look at MS-Excel 2003
: Visual Basic 6.0 ‫ الموجوده داخل الـ‬Excel ‫ التعرف على مكتبة الـ‬  .2  
Excel 2003 ‫ و هى المختصه بالتعامل مع نسخة الـ‬Microsoft Excel 11.0 Object Liberary ‫المكتبة اسمها‬
: ‫ المختلفه على حسب االصدار مثل‬Excel ‫و هناك مكتبات للتعامل مع نسخ الـ‬

Microsoft Excel 12.0 Object ‫ تستدعى‬Microsoft Office Excel 2007 ‫اذا كنت تريد التعامل مع نسخة‬
Liberary
Microsoft Excel 11.0 Object ‫ تستدعى‬Microsoft Office Excel 2003 ‫اذا كنت تريد التعامل مع نسخة‬
Library
Microsoft Excel 10.0 Object ‫ تستدعى‬Microsoft Office Excel 2002 ‫اذا كنت تريد التعامل مع نسخة‬
Library
Microsoft Excel 9.0 Object ‫ تســتدعى‬Microsoft Office Excel 2000 ‫اذا كنت تريد التعامل مع نسخة‬
Library
‫اذا كنت تريد التعامل مع نسخة ‪ Microsoft Office Excel 1997‬تســتدعى ‪Microsoft Excel 8.0 Object‬‬
‫‪Library‬‬
‫و لتحميل المكتبه الخاصه بالجزء الخاص بنا فى هذا الدرس ‪ Excel 2003‬نتبع الخطوات كما بالصورة التاليه ‪:‬‬

‫‪VB 6.0 & Excel 2003 - Lesson‬‬


‫هذا اذا كنت ال تعرف المكتبه و هذا الدرس للمبتدئينـ فى الموضوع و ايضا لمن يريد التعــرف أكــثر على هــذا الموضــوع‪,‬‬
‫بهذا الشكل نكون قد استدعينا مكتبة التعامــل مــع ‪ Excel 2003‬من خالل الفيجــوال بــيزك و هى نفس طريقــة اســتدعاء‬
‫مكتبة ‪ ADO‬و ‪ DAO‬للتعامل مع ‪. Access‬‬
‫و األن قم بعمل مجلـد ‪ Folder‬باسـم (‪ )ExcelApp‬مثال و انشـىء بداخلـه مشـروع‪ Visual Basic 6.0  ‬جديـد بنـوع‬
‫‪ Application‬به ‪ Form1‬كالعاده ‪ ,‬و أضف موديول ثم ابدأ بحفظ مشروعك فى المجلد الخاص به بعد استدعاء مكتبة‬
‫‪ Excel 11.0‬حيث فى مشــروعى هــذا فـان اســم المشــروع هــو ‪ MyExcelApp‬و المجلــد هــو ‪ Excel‬و الفــورم هى‬
‫‪ MainFrm‬و الموديوا باسم ‪ MyExcelMod‬و يمكنك اختيار االسماء التى ترغب فيها كما تشــاء و لكن لتعــرف من‬
‫أين أتت األكواد الخاصه بى ‪.‬‬
‫أغلق المشروع بعد حفظه تماما ثم افتحه مره أخرى ‪....‬‬
‫هذا المشروع سيكون لن يكون تطبيق كامـل و لكن لنـدرس عليـه و نحفظـه كمرجـع لنـا فى التعامـل مـع الـ ‪ Excel‬و ان‬
‫شاء هللا نقوم بتغطية جميع النقاط الهامه فى الموضوع ‪.‬‬
‫نضع أوال ‪ Command1‬باسم ‪ CmdNew‬على الفــورم النشـاء ملـف اكسـل فى المجلـد الــذى يحتـوى على المشـروع‬
‫‪ Excel‬و سيكون الكود فى الحدث ‪ , CmdNew_Click‬و لكن قبل هذا يجب استدعاء المكتبه و الخطوه السابقه غــير‬
‫كافيه للتعامل مع الـ ‪ Excel‬فكل ما قمنا به كان تعريف الفيجوال بيزك على المكتبه و لكن الســتدعائها نقتح الموديــول و‬
‫نكتب األكواد التاليه ‪:‬‬
‫‪Option Explicit‬‬
‫‪Public oXl As New Excel.Application‬‬
‫الكود وظيفته حجز نسخة من ‪ Class‬الـ ‪ Excel.Application‬فى المتغير ‪ oXl‬للتعامل معها فى البرنامج ‪.‬‬
‫‪Public oWb As New Excel.WorkBook‬‬
‫الكود وظيفته حجز نسخة من ‪ Class‬الـ ‪ Excel.WorkBook‬فى المتغير‪ oWB ‬للتعامل معها فى البرنامج ‪.‬‬
‫‪Public oSheet As New Excel.WorkSheet‬‬
‫الكود وظيفته حجز نسخة من ‪ Class‬الـ ‪ Excel.WorkSheet‬فى المتغير‪ oSheet ‬للتعامل معها فى البرنامج ‪.‬‬
‫‪Public oRng As Excel.Range‬‬
‫الكود وظيفته تخزين مدى الخاليا ‪ Excel.Range‬فى المتغير‪ oRNG ‬للتعامل معها فى البرنامج ‪.‬‬

‫‪ -‬ماذا تفعل عندما تريد فتح ملف ‪ Excel‬عادى للعمل عليه بدون الفيجوال بيزك ؟!‬
‫انت تقـــوم بعمـــل ‪ Right-Click‬فى مكـــان على الـ ‪ DeskTop‬مثال ثم من القائمـــة الـــتى تظهـــر تختـــار ‪ New‬ثم‬
‫‪ Microsoft Excel WorkSheet‬و هذا الفعل و بالمثل ما نفعله فى الـ ‪. Visual Basic 6.0‬‬
‫االن فى الحدث ‪ CmdNew_Click‬اكتب الكود التالى ‪:‬‬
‫‪oXl.Visible = True‬‬
‫و شغل البرنامج و اضغط على مفتاح ‪ CmdNew‬تالحظ ان ملف اكسل فتح و لكن خاوى ليس بــه شــىء و هـذا ألننــا لم‬
‫نقم اال‪ ‬بفتح برنــامج ‪ ...... Microsoft Excel 2003 Application‬و لكن هــذا بالفعــل مـا قمنــا بــه عنــدما حجزنــا‬
‫النسخه ‪ Excel.Application‬فى الموديول و لكن مــا زاد عليــه اننــا اخبرنــا البرنــامج ان يجعــل خاصــية = ‪Visible‬‬
‫‪ True‬اى ان طبيعتها هى ‪ . False‬اذا اردنا فتح ملف ‪ Excel‬للعمل به اذا نحن نريد فتح ‪ WorkBook‬من ‪ Excel‬و‬
‫ذلك عن طريق اخبار البرنامج أن هناك كائن جديد ‪ Object‬هو ‪ WorkBook‬و المخصص له المتغير ‪.oWB‬‬
‫بعد الكود السابق اكتب الكود التالى ‪:‬‬
‫‪Set oWB = oXl.WorkBooks.Add‬‬
‫قم بتجربة المفتاح هذه المره ستجد أن الـ ‪ Excel‬قد فتح و به ‪ WorkBook‬يمكنك العمــل بهــا و مــا حــدث انــه اخبرنــا‬
‫الفيجوال بيزك باضافة ‪ WorkBook‬جديد لبرنامج األكسل المخزن نسخته فى المتغير ‪. oXl‬‬
‫االن اغلق قم باضافة مفتاح باسم ‪ CmdExit‬بعنوان ‪ Exit‬و فى الحدث ‪ CmdExit_Click‬اكتب الكود ‪:‬‬
‫‪End‬‬
‫و هذا النهاء البرنامج ‪.‬‬
‫االن قم باعــادة التجربــة ثم اضــغط على ‪ Exit‬و الحــظ ان البرنــامج قــد اغلــق و لكن‪ ‬الـ ‪ Excel‬لم‪ ‬ينتهى ‪ ,‬و اذا اردنــا‬
‫الخروج من الـ ‪ Excel‬ايضا فان فى الحدث ‪ CmdExit_Click‬قبــل الكــود الســابق نكتب الكــود التـالى و ايضـا يمكننـا‬
‫اضفافة هذا الكود فى الحدث ‪ Form_UnLoad‬حيث اذا اردنا الخروج من عن الضغط على ‪: X‬‬
‫‪oXl.Quit‬‬
‫االن قم باعــادة التجربــة ثم اضــغط على ‪ Exit‬و الحــظ ان البرنــامج قــد اغلــق و الـ ‪ Excel‬ايضــا و اذا اردنــا ان نحفــظ‬
‫هذا‪  ‬االكسل قبل الخروج من البرنامج فيمكننا استخدام كود حفظ عادى للـ ‪ Excel‬ال أحبذ اســتخدامه حيث نضــيف مفتــاح‬
‫باســم ‪ CmdSave‬على الفــورم بعنــوان ‪ Save‬و فى الحــدث ‪ CmdSave_Click‬نكتب الكــود التــالى لحفــظ ملــف الـ‬
‫‪ Excel‬المنشأ ‪:‬‬
‫‪oWB.Save‬‬
‫االن قم باعادة التجربة ثم اضغط على ‪ Save‬ثم اغلق البرنامج و انظر فى المجلد فانك لن تجد شيئا ألن ملــف الـ ‪Excel‬‬
‫تم حفظه فى ‪ , My Documents‬اذا اردنا حفظ الـ ‪ Excel‬فى المجلد الــذى ‪ Excel‬باالســم الـذى نريــده فاننـا نضــيف‬
‫مفتاح باسم ‪ CmdSaveAs‬على الفورم بعنــوان ‪ Save As‬و فى الحــدث ‪ CmdSaveAs_Click‬نكتب الكـود التـالى‬
‫لحفظ ملف الـ ‪ Excel‬المنشأ فى مجلد ‪ Excel‬باسم ‪: MyExcel1‬‬
‫"‪oWB.SaveAs App.Path & "/MyExcel1.Xls‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫االن قم بتجربة البرنامج و ال تنسى فى كل مره تجرب البرنامج أن تبدأ بالضغط على مفتاح ‪ New‬ثم تظهر الفورم أمامك‬
‫و هنا ستضغط على مفتاح ‪ Save As‬و افتح مجلد ‪ Excel‬أو ايا كان اسم المجلد الذى يحتوى على مشروعك ستجد أن‬
‫ملف ‪ Excel‬باسم ‪ MyExcel1.Xls‬قد تم انشاءه بالفعل لديك ‪ ,‬لكن ماذا اذا اردنا حفظ ملف الـ ‪ Excel‬فى مكــان اخــر‬
‫أو فى أى مكان نريـده‪ ‬فاننــا نحتـاج الى اداة ‪ CommonDialog‬على الفـورم و سـتكون باسـم ‪ Cdl1‬و سـنقوم بالغـاء‬
‫الكود السابق عن طريق وضع عالمة ‪ Comment‬أو تعليق و نكتب الكود التالى فى الحدث ‪: SaveAs_Click‬‬
‫‪'Visual Basic Online Course - Excel 2003 Part 2‬‬
‫‪'Automate Excel from Visual Basic‬‬

‫‪'Save Excel *.xls file using CommonDialog Box‬‬


‫‪Dim FileNm As String‬‬
‫"‪Cdl1.Filter = "Microsoft Excel 2003 (.Xls)*.Xls‬‬
‫‪Cdl1.ShowSave‬‬
‫‪FileNm = Cdl1.FileName‬‬
‫‪oWB.SaveAs FileNm‬‬
‫‪view rawgistfile1.vb  hosted with ❤ by  GitHub‬‬

‫قم بتجربة البرنامج اضغط على ‪ New‬ثم ‪ Save As‬و حدد اسم الملف و ليكن ‪ Sheet1‬و المكان الذى تريــد حفظــه بــه‬
‫"اذا كنت تعمل على شــبكه جــرب حفظـه على جهــاز اخــر" و اضــغط ‪ Save‬من ‪ CommonDialog‬الظــاهر امامـك ثم‬
‫اغلق البرنامج تالحظ ان الـ ‪ Excel‬تم اغالقــه مــع البرنــامج و عنــد فتح المجلــد الــذى تم الحفــظ فيــه ســتجد بــه ملــف الـ‬
‫‪ Excel‬باسم ‪. Sheet1‬‬
‫األن و قد تعلمنا انشاء ملف ‪ Excel‬جديد و حفظة بشتى الطريق ‪.‬‬

‫الى اللقـاء فى‪ ‬الـدرس الثـانى‪ ‬ان شـاء هللا بعنـوان (فتح ‪ -‬حفـظ ‪ -‬تعـديل ملـف‬
‫‪ )Excel‬فتابعــــــــــــــــــونا ‪,‬‬
‫الجـــــــــزء الثانى ‪ -‬فتح و تعديل و حفظ ملف اكسل‬
‫باذن هللا تعالى‪ ‬سنستخدامـ مشروع المثال السابق و الذى سيتم رفعه فى نهايـة األجـزاء ان شـاء هللا تعـالى ‪ ,‬حيث سـنقوم‬
‫بالضغط على ‪ New‬النشاء ملف ‪ Excel‬جديد حيث ســيفتح ملــف الـ ‪ Excel‬على الشاشــة ثم نقــوم بحفظــه فــارغ بــدون‬
‫تعديل عليه باسم ‪ ExcelFile‬من مفتاح ‪ Save As‬الموجود على الفــورم ثم نغلــق الـ ‪ Excel‬الــذى نالحــظ أنــه بالفعــل‬
‫تغير اسمه فى شريد عنوان الـ ‪ Excel‬و نغلق البرنامج و نتأكد من وجوده فى المجلد الموجود بــه المشــروع أو اذا كنت‬
‫تقوم بنفسـ مثالى ستجده فى المجلد ‪ Excel‬كما بالصورة التاليه ‪:‬‬

‫شكل المجلد‬
‫المفروض أننا نقوم األن بالتعديل على ملف الـ ‪ Excel‬باسـتخدام الكـود من داخـل الـ ‪ Visual Basic‬و هنـا نفـرق بين‬
‫أمرين ‪:‬‬
‫‪ )1‬التعديل على ملف الـ ‪ Excel‬الموجود به بيانات مسبقا و حفظ التغييرات ‪.‬‬
‫‪ )2‬بداية الكتابه فى ملف الـ ‪. Excel‬‬
‫االن نقــــــــــــــــــوم بفتح االكســــــــــــــــــل ‪ ExcelFile‬عن طريــــــــــــــــــق البرنــــــــــــــــــامج كالتــــــــــــــــــالى ‪:‬‬

‫‪  ‬ال يوجد فرق برمجى بين النقتطينـ و لكن أريد أن أوضح نقطه معينه و هى أنه يمكنك استخدام الفيجوال بيزك لعمل‬
‫مشروع ‪ Excel‬من البدايه الى النهايه و ايضا يمكنك التعديل على ملف اكسيل به عمل مسبقا و جعله جزأ من برنامجك‬
‫و حتى ال نطيل فى الشرح ‪ ...‬نكمل بناء على االفتراض األول ‪..‬‬
‫سنقوم بادراج مفتاح ‪ Command‬جديد على الفورم بعنوان ‪ Open Excel‬باســم ‪ CmdOpen‬و الــذى ســنقوم عن‬
‫طريقه بفتح ‪ ... ExcelFile‬فى الحدث ‪ CmdOpen_Click‬نكتب الكود التالى ‪:‬‬
‫‪'Visual Basic Online Course‬‬
‫‪'Automate MS Excel From VB6‬‬

‫‪'Open Excel *.xls‬‬


‫"‪oXl.WorkBooks.Open App.Path & "/ExcelFile.Xls‬‬
‫‪oXl.Visible = True‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫و لكن ماذا اذا أردنا فتح ملف ‪ Excel‬اخر ؟!!‬


‫نعم ‪ ,‬سنســـتخدمـ أداة ‪ CommonDialog‬الموجـــود مســـبقا على الفـــورم باســـم ‪ Cdl1‬حيث‪ ‬ســـنقوم بـــادراج مفتـــاح‬
‫‪ Command‬جديــــد على الفــــورم بعنــــوان ‪ Open Excel As‬باســــم ‪ .... CmdOpenAs‬حيث فى الحــــدث‬
‫‪ CmdOpenAs‬نكتب الكود التالى ‪:‬‬
‫‪'Visual Basic Online Course‬‬
‫‪'Automate MS Excel from Visual Basic 6‬‬

‫‪'Use CommonDialogBox to Open Excel *.xls‬‬


‫‪Dim FileNam As String‬‬
‫"‪Cdl1.Filter = "Microsoft Excel 2003 (.Xls)*.Xls‬‬
‫‪Cdl1.ShowOpen‬‬
‫‪FileNam = Cdl1.FileName‬‬
‫‪oXL.Workbooks.Open FileNam‬‬
‫‪oXL.Visible = True‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫قم بتجربة البرنامج و الحظ ظهور ملف الـ ‪ Excel‬مفتوح على الشاشة و االن ابدأ عمل االتى كما فى الصورة التاليه ‪:‬‬

‫شكل مثال االكسل‬

‫و هــو عبــاره عن مشــروع حســاب قيمــة فــاتورة صــغير جــدا بــدون تفاصــيل كثــيره حيث ضــريبة المبيعــات (‪ )%10‬و‬
‫االستقطاعات تكون أى رقم ‪...‬‬
‫بعد االنتهاء من تصميم االكسل حاول حفظ ملف االكسل ‪ ExcelFile‬و البرنامج مفتوح ‪ Ctrl+S‬او من ‪ File‬ثم ‪Save‬‬
‫ســــتجد أن ملــــف الـ ‪ Excel‬الــــذى انشــــأناه ال يتمكن حفظــــة ألنــــه ‪ ReadOnly‬أى مفتــــوح للقــــراءه فقــــط ‪,‬‬
‫‪ ‬‬
‫اظهــر البرنــامج أمامــك و اضــغط على ‪ Save As‬و قم بحفظــه بنفس االســم ‪ ExcelFile‬أو بــأى اســم اخــر ســتجد أن‬
‫البرنامج يعطيك رسالة خطأ " ‪ .... "Can not Create Object‬اذا ما العمل ؟‬
‫ال حظ ان فى الدرس السابق قمنا بحفظ ملف الـ ‪ Excel‬بدون أى اعتراضات من البرنامج أو من ‪ MS-Excel 2003‬و‬
‫لكن ألن ملف الـ ‪ Excel‬هذه المره تم انشاءه مسبقا و محفوط بالفعــل فهــذا معنــاه اننــا لن نتعامــل مــع ‪ oXl‬ألنــه بالفعــل‬
‫حاضـــــــــــــــــــــــــــــــــــــر معنـــــــــــــــــــــــــــــــــــــا ‪ ....‬للتوضـــــــــــــــــــــــــــــــــــــيح أكـــــــــــــــــــــــــــــــــــــثر ‪:‬‬

‫‪  ‬خارج بيئة الفيجوال بيزك ‪ -‬فى بيئة الويندوز العاديه عندما تضغط ‪ Right-Click‬و تختار ‪ New Excel File‬هل‬
‫هذا يقوم الويندوز بانشاء برنامج ‪ Excel‬أو يقوم فقط بانشاء ‪ Workbook‬جديد ؟!‪  ‬طبعا يقوم بانشاء ‪Workbook‬‬
‫جديد ‪ ....‬و هذا ما نفعله فة بيئة الفيجوال بيزك حيث ‪  :‬نأخذ نسخه من برنامج ‪ Excel‬مره واحده فقط فى البدايه و‬
‫نعمل عليها و نحفظها و لكن عندما نستدعيها لحفظها فاننا نستدعى ‪ Workbook‬و نحفظ ‪ .....Workbook‬وصلت‬
‫الفكره ؟!‬
‫الن نريد تعديل كود الحفظ حيث نريد ان نحفظ ‪ Workbook‬موجود بالفعل مفتوح أمامنا فمنا بتعديله "بالكتابه فيه" و‬
‫نريد حفظ هذه التعديالت ‪ ....‬فى الحدث ‪ CmdSaveAs_Click‬نستبدل هذا الكود ‪:‬‬
‫‪ WB.SaveAs FileNm‬‬
‫بهذا الكود ‪:‬‬
‫‪ oXL.ActiveWorkbook.Close True, FileNm‬‬
‫و نقوم بتجربة البرنامج نجد أنه قام بحفظ التغييرات بنجاح و لكن تظهر رسالة تأكيد حفــظ التغيــيرات على ملــف ‪Excel‬‬
‫موجود مسبقا "هل تريد حفظ التغيرات؟" و نضغط "‪ "Yes‬و لكن ماذا اذا لم نرد أن نظهر هذه الرســالة و نؤكــد الحفــظ‬
‫تماما ‪ ...‬نقوم بزيادة هذا السطر لكود الحفظ قبل اخر سطر ليصبح كود الحدث ‪ CmdSaveAs_Click‬كالتالى ‪:‬‬
‫‪'Visual Basic Online Course‬‬
‫‪'Automate Excel2003 from VB6‬‬

‫‪'Using CommonDialogBox to Save As ... new Excel *.xls‬‬


‫‪Dim FileNm As String‬‬
‫"‪Cdl1.Filter = "Microsoft Excel 2003 (.Xls)*.Xls‬‬
‫‪Cdl1.ShowSave‬‬
‫‪FileNm = Cdl1.FileName‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫‪oXL.ActiveWorkbook.Close True, FileNm‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫حيث الكود بالســطر قبــل االخــير "قبــل كــود الحفــظ" يمنــع الـ ‪ Excel‬من اظهــار رســائل نهائيــا فقــط يقــوم بتنفيــذ األمــر‬
‫‪.‬‬ ‫الــــــــبرمجى المنطقى "بمعــــــــنى اخــــــــر الـ ‪ Excel‬افــــــــترض اننــــــــا ســــــــنقوم بالضــــــــغط على ‪"Yes‬‬
‫األن قم بتجربة البرنــامج و قم بــأى تعــديل و احفــظ الـ ‪ Excel‬من مفتــاح ‪ Save As‬ســتجد أنــه تم حفظــة باالســم الــذى‬
‫اعطيتــــــــــه أو باالســــــــــم الموجــــــــــود فعال ‪ ExcelFile‬بــــــــــدون مشــــــــــاكل أو رســــــــــائل تحذيريــــــــــه ‪.‬‬

‫الحمد هلل و الى هنا نكون قد وصلنا لنهاية هذا الجزء (فتح و تعديل و حفـظ الـ ‪ Excel‬من خالل الفيجـوال بـيزك) بعـد أن‬
‫تعرضـــــــــــــــــــــــــنا لمجموعـــــــــــــــــــــــــه من األخطـــــــــــــــــــــــــاء و قمنـــــــــــــــــــــــــا بحلهـــــــــــــــــــــــــا ‪.‬‬

‫باذن هللا تعالى الدرس القادم‬


‫استيراد البيانات من الـ ‪ Excel‬الى الـ ‪Visual Basic 6.0‬‬
‫الجـــــــــزء الثالث ‪ -‬استيراد البيانات من ‪Excel‬‬
‫لكى يتم اســتيراد البيانــات من الـ ‪ Excel‬بطريقــة ســليمه و مفيــدهـ دعونــا نســترجع طريقــة العمــل مــع الـ ‪Access‬‬
‫‪ 2003‬حيث نختار قاعدة البيانات و تحديدـ مكانها و فتحها ثم فتح الجدول و تحديد السجل ثم الحقل و فى النهايه نقــوم‬
‫‪.‬‬ ‫‪DAO‬‬ ‫‪ ADO‬او ‪3.5‬‬ ‫باســـــــــــتيراد البيانـــــــــــات الى الـ ‪ Form‬عن طريـــــــــــق مثال ‪2.8‬‬

‫و الميزه الكبيره من استيراد البيانات من الـ ‪ Excel‬فى أغلب االوقات تعــود الى وجــود كميــات من البيانــات المطلــوب‬
‫معالجتها فى مكان واحد بطرق مختلفة خــارج الـ ‪ Excel‬امــا ألهميتهــا أو لصــعوبة تطــبيق تلــك المعالجــه من خالل الـ‬
‫‪ Excel‬ففى النهاية كون الـ ‪ Excel‬جــزء من مجموعــة الـ ‪ Microsoft Office‬فــان ذلــك يجعلــه ‪ Shared‬فى‬
‫معظم األوقات حتى فى حالة وجود ‪ Password‬فان فك الـ ‪ Password‬أصبح فى متناول الجميع أى انه غير أمن‬
‫‪.‬‬

‫وظيفــــــة الـ ‪ Visual Basic‬هنــــــا هى االعتمــــــاد على الـ ‪ Excel‬فى عــــــرض ثم معالجــــــة البيانــــــات ‪.‬‬
‫فى المثال السابق قمنا بعمل ملف ‪ Excel‬بسيط لحساب فاتورة و فى هذا الـدرس سـنقوم باسـتكمال الشــرح على نفس‬
‫المثــــــــــــــــــــــــــــــــــــــــــــــــــــال حيث ســــــــــــــــــــــــــــــــــــــــــــــــــــنقوم بــــــــــــــــــــــــــــــــــــــــــــــــــــــ ‪-:‬‬
‫‪ )1‬تصــــــــــــــــــــــــــميم ‪ Form‬تتناســــــــــــــــــــــــــب شــــــــــــــــــــــــــبيهه للموجــــــــــــــــــــــــــوده بالـ ‪Excel‬‬
‫‪Visual‬‬ ‫‪Basic‬‬ ‫‪ )2‬ربـــــــــــــــــــــــــــــــــــــــط الـ ‪ Excel‬بالـ ‪6.0‬‬
‫‪Visual‬‬ ‫‪Basic‬‬ ‫‪ )3‬عــــــــــــــــــــــــــرض ملــــــــــــــــــــــــــف الـ ‪ Excel‬فى ‪6.0‬‬

‫‪ )1‬تصــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــميم ‪: Form‬‬
‫سنقوم بجعل الفورم تظهر بهذا الشكل كما فى الصورة التاليه و سيتم رفع المثال لتنزيلــه فى نهايــة الموضــوع ان شــاء‬
‫هللا ‪:‬‬

‫شكل الفورم‬
‫و هنــا بعــد تصـميم الفــورم كمــا بملــف االكســل ‪ ExcelFile.Xls‬الــذى قمنــا بعملــه فى الــدرس الســابق فاننــا ســنقوم‬
‫باستيراد البيانات الموجوده فيه على انها هى البيانات الوحيده فى االكسل و لكن كما ذكرنا فانـه فى الواقـع يكـون ملـف‬
‫األكسل به بيانــات اكــثر من ذلــك على ســبيل المثــال نحن نتعامــل مــع ‪ Workbook‬واحــد و ‪ Sheet‬واحــد فى بعض‬
‫االحيان تجد أكثر من ‪ Workbook‬و اكثر من ‪ Sheet‬و سنأتى الى ذلك ان شاء هللا بعد معرفــة كيفيــة االســتدعاء ‪.‬‬

‫‪ )2‬ربـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــط الـ ‪: Excel‬‬


‫بعد ان انتهينا من تصميم الفورم يأتى دور تعريف البرنــامج على ملــف األكســل عنــد الضــغط على مفتــاح "اســتيراد من‬
‫االكســــــــــــــــــــــــــــــــــل" يجب ان يقــــــــــــــــــــــــــــــــــوم البرنــــــــــــــــــــــــــــــــــامج بـــــــــــــــــــــــــــــــــــ ‪-:‬‬
‫‪ -  ‬تحديد مكان االكسل‬
‫‪ -‬فتح االكسل‬
‫‪ -‬تحديدـ الـ ‪Workbook‬‬
‫‪ -‬تحديدـ الـ ‪Sheet‬‬
‫‪ -‬تحديد الحقول المراد استيراد البيانات منها لوضعها فى الـ ‪ TextBox‬على الـ ‪. Form‬‬
‫و ســــــــــــــــــــيتم جــــــــــــــــــــزء من ذلــــــــــــــــــــك فى الحــــــــــــــــــــدث ‪ Form_Load‬كالتــــــــــــــــــــالى ‪:‬‬

‫‪'Visual Basic Online Course - Excel 2003‬‬


‫‪'http://vb6access2003.blogspot.com‬‬

‫‪'Determine Xl Location‬‬
‫‪oXL.Workbooks.Open App.Path & "/ExcelFile.Xls", True,‬‬
‫‪True‬‬
‫‪oXL.Visible = False‬‬
‫‪view rawgistfile1.vb  hosted with ❤ by  GitHub‬‬

‫حيث قمنا بتحديد مكان و فتح الـ ‪ Excel‬و ثانى معامل ‪ Parameter‬هو ‪ True‬و هو قيمــة ‪ UpdateLinks‬أى‬
‫نجعل ملف الـ ‪ Excel‬يقوم بتجديدـ الروابط و المعادالت الموجوده به و ثالث معامل ‪ ReadOnly‬قيمته‪ True ‬ألننــا‬
‫ســـــــنقوم فقـــــــط باالســـــــتدعاء و الكـــــــود الثـــــــانى يفيـــــــد أننـــــــا لن نظهـــــــر الـ ‪ Excel‬على الشاشـــــــة ‪.‬‬

‫‪ )3‬عـــــــــــــــــــــــــــــــــــــرض بيانـــــــــــــــــــــــــــــــــــــات الـ ‪: Excel‬‬


‫هنا سيتم وضع األكواد فى الحدث ‪ Comman1_Click‬باسم "استيراد من األكسل" كالتالى ‪:‬‬
‫‪'Visual Basic Online Course - Excel2003‬‬
‫‪'http://vb6access2003.blogspot.com‬‬

‫)‪Set oSheet = oXL.Worksheets(1‬‬


‫‪Text1.Text = oSheet.Range("L3").Value‬‬
‫‪Text2.Text = oSheet.Range("K3").Value‬‬
‫‪Dtp1.Value = oSheet.Range("J3").Value‬‬
‫‪Text4.Text = oSheet.Range("I3").Value‬‬
‫‪Text5.Text = oSheet.Range("H3").Value‬‬
‫‪Text6.Text = oSheet.Range("G3").Value‬‬
‫‪Text7.Text = oSheet.Range("F3").Value‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫حيث قمنا بتحديد الـ ‪ Sheet‬و هو الـ ‪ Sheet‬رقم (‪ )1‬ثم حددنا قيمة الـ ‪ Text1‬تســاوى الخليــه رقم (‪ )L3‬و هكــذا‬
‫لبــاقى الـ ‪ TextBoxs‬و بالنســبة للتــاريخ فــان تنســيق خليــة التــاريخ فى الـ ‪ Excel‬هــو ‪ Date‬و بالتــالى ال يوجــد‬
‫مشكلة فى استيراد حقل تــاريخ من الـ ‪ Excel‬الى أداة تــاريخ فى الـ ‪ Visual Basic‬وهى ‪DateTimePicker‬‬
‫‪.‬‬ ‫باســـــــــــــــــــــــــــــــــــــــــــم ‪ Dtp1‬الموجـــــــــــــــــــــــــــــــــــــــــــوده على الـ ‪Form‬‬
‫قم بتجربـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــة البرنـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــامج ‪....‬‬
‫تحميــــــــــــــــــــــل التطــــــــــــــــــــــبيق حــــــــــــــــــــــتى هــــــــــــــــــــــذا الــــــــــــــــــــــدرس ‪MediaFire.Com‬‬
‫الى اللقاء فى‪ ‬الجزء القادم‪ ‬ان شاء هللا تصدير البيانات الى الـ ‪ Excel‬‬
‫الجـــــــــزء‪ ‬الرابع ‪ -‬تصدير البيانات‪ ‬الى ‪Excel‬‬
‫بعد ان عالجنا كيفية استيراد البيانات فى الجزء الســابق‪ ,‬نتعامــل االن مــع موضــوع شــبيه و هــو تصــدير البيانــات الى الـ‬
‫‪ Excel‬مما يجعل التعامل مع الـ ‪ Excel‬مفيد الى حد كبـير و ســنقوم بــالتطبيق على المثــال الســابق‪ ,‬لـذا قم بتحميلـه من‬
‫الدرس السابق‪.‬‬

‫بداية سنقوم باضافة مفتاح على الفـورم بعنـوان "تصـدير الى االكسـيل" باسـم ‪ Command2‬و المطلـوب هـو تحـديث‬
‫الجدول الموجود فى االكسل الذى قمنا باستيراده فى الجزء السابق‪.‬‬

‫و فى البداية سنقوم باستيراد البيانات أوال عن طريـق ‪ Command1‬و عنـدما يقـوم البرنـامج بعـرض البيانـات سـنقوم‬
‫بتحديث البيانات المعروضه ‪.‬‬

‫فى الحدث ‪ Command1_Click‬سنكتب الكود التالى ‪:‬‬


‫‪'Visual Basic Online Course - Excel 2003‬‬
‫‪'VB6 Excel2003 Example Project Code‬‬
‫‪'http://vb6access2003.blogspot.com‬‬

‫‪oXL.Workbooks.Open App.Path & "/ExcelFile.Xls", True,‬‬


‫‪False‬‬
‫)‪Set oSheet = oXL.Worksheets(1‬‬
‫‪oSheet.Range("L3").Value = Text1.Text‬‬
‫‪oSheet.Range("K3").Value = Text2.Text‬‬
‫‪oSheet.Range("J3").Value = Dtp1.Value‬‬
‫‪oSheet.Range("I3").Value = Text4.Text‬‬
‫‪oSheet.Range("H3").Value = Text5.Text‬‬
‫‪oSheet.Range("G3").Value = Text6.Text‬‬
‫‪oSheet.Range("F3").Value = Text7.Text‬‬
‫‪Set oSheet = oXL.ActiveSheet‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫"‪oXL.ActiveWorkbook.Close True, App.Path & "/ExcelFile.Xls‬‬
‫‪oXL.Workbooks.Close‬‬
‫‪oXL.Quit‬‬
‫"‪MsgBox "Updated‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫و ما قمنا به هنا هو كالتالى ‪:‬‬


‫‪ -‬فتح االكسل تمهيدا لتصدير البيانات اليه حيث أول معامل هو امتداد‪+‬اسم ملف الـ ‪ Excel‬و المعامل الثانى‬
‫‪ UpdateLinks‬و المعامل الثالث ‪ ReadOnly = False‬ألننا نقوم بالتعديلـ عليه ‪.‬‬
‫‪ -‬تحديد الـ ‪ Sheet‬التى سيتم العمل عليها و هى الـ ‪ Sheet‬االولى ‪.‬‬
‫‪ -‬تحديث الخاليا‬
‫‪ -‬تحديد الـ ‪ Sheet‬النشطة حاليا‬
‫‪ -‬الغاء الرسائل التى تظهر من األكسل‬
‫‪ -‬حفظ التغييرات على األكسل‬
‫‪ -‬اغالق الـ ‪Workbook‬‬
‫‪ -‬الخروج من االكسل‬
‫‪ -‬اظهار رسالة تفيدـ الحفظ‬
‫الحظ ‪:‬‬
‫هذه الطريقه هى تبسيط للشرح فقط لكى تتعرف على طريقة التعامل مع ‪ Excel‬و سندرس طرق أكثر تعقيدا فى الدروس‬
‫القادمه ان شاء هللا و الحظ ايضا انه ال توجد ايا من الطرق التى درسناها تخرج رســائل ‪ Error‬ال من الـ ‪ Excel‬أو من‬
‫الـ ‪ Visual Basic‬و سنتعرض فيما بعد الى رسائل خطأ كثيره و معالجاتها ان شاء هللا تعالى ‪.‬‬

‫حتى االن لم نعمل اال على صف واحد من الخانات فى الـ ‪ Excel‬أى اننا لم نضيف بيانات جديدهـ و للعلم ‪ :‬التعامــل مــع الـ‬
‫‪ Excel‬يمكن أن تجعله شبيه للـ ‪ Access‬و لكن مع الوقت حيث انهما متشابهان فى الكثير جدا ‪.‬‬

‫اسف على االطاله ‪......‬‬

‫الى اللقاء فى الجزء القادم ان شاء هللا بعنوان "طباعة اإلكسل"‬


‫الجـــــــــزء الخامس ‪ -‬طباعة اإلكسل‬
‫و لطباعة محتويات ملف ‪ Excel‬يجب ان نقوم ‪:‬‬
‫‪ )1‬تحديدـ مكانه‬
‫‪ )2‬فتحه‬
‫‪ )3‬تعيين الـ ‪ Sheet‬المراد طباعته‬
‫‪ )4‬تحديدـ المدى ‪ Range‬المراد طباعته‬
‫‪ )5‬تنفيذ عملية الطباعه‬

‫و بـــالتطبيق على المثـــال الســـابق "حســـاب فـــاتورة" نضـــيف الى الفـــورم مفتـــاح بعنـــوان "طباعـــة فــاتورة" باســـم‬
‫‪ Command3‬و المطلوب هو طباعة الفاتورة الحاليه و يوجد طريقتين ‪:‬‬
‫أ) تحديد الطباعه من اإلكسل نفسه‬
‫ب) تحديد الطباعه من الفيجوال بيزك‬
‫و سنعتمد الطريقه األولى األن حيث سنفتح ملف اإلكسل و سنحددـ الفاتورة بالكامــل و من ‪ File‬نختــار ‪Print Area‬‬
‫ثم ‪ Set Print Area‬ثم نغلق اإلكسل و نحفظ التغييرات ‪.‬‬

‫نفتح الـ ‪ VB 6.0‬و فى الحدث ‪ Command3_Click‬نكتب الكود التالى ‪:‬‬


‫‪oXL.Workbooks.Open App.Path & "/ExcelFile.Xls", True, True‬‬
‫‪Set oSheet = oXL.ActiveSheet‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫‪oSheet.PageSetup.Orientation = xlLandscape‬‬
‫‪oSheet.PrintOut‬‬
‫حيث فى الكود السابق ‪:‬‬
‫‪ -‬قمنا بفتح ملف اإلكسل من مكانه المحدد و عمل ‪ Update Links‬و فتحه للقراءة فقط ‪ ReadOnly‬ألننا سنطبع‬
‫فقط‬
‫‪ -‬تحديدـ الـ ‪ Sheet‬الذى نعمل عليه ‪oSheet‬‬
‫‪ -‬اخفاء رسائل الـ ‪Excel‬‬
‫‪ -‬جعل شكل الطباعه ‪ LandScape‬بالعرض و ليس ‪ Portrait‬بالطول‬
‫‪ -‬أمر الطباعه ‪.‬‬

‫الحظ ‪:‬‬
‫اذا لم يكن لديك ‪ Printer‬سيقوم البرنامج تلقائيا بالطباعه فى ملف ‪ mdi‬يمكنك استعراض شكل الطباعه منه ‪.‬‬

‫‪ -‬بالنســبه للطريقـة الثانيــه و هى تنســيق ملـف الـ ‪ Excel‬من داخــل الفيجـوال بـيزك ففى درس قـادم ان شــاء هللا بعــد‬
‫االنتهاء من األساسيات المطلوب معرفتها للتعامل مع ‪ Excel‬بدون مشاكل ‪.‬‬

‫‪ -‬يمكنك ادراج جميع التنسيقات على ملــف االكســيل من داخــل الـ ‪ Excel‬نفســه و طباعتهــا من الفيجــوال بــيزك و هى‬
‫الطريقه االسهل اال اذا كان التنسيق جزء من عمل البرنامج و فى جميع الحاالت سندرس الطريقه الثانيه ان شاء هللا ‪.‬‬

‫‪ -‬جارى تجهيز برنامج به جميع تطبيقات االكسيل المطلوبه فى سوق العمل ‪.‬‬

‫الى اللقاء فى‪ ‬الدرس القادم‪ ‬ان شاء هللا بعنوان "بعض الموضـوعات الهامــه‬
‫فى التعامل مع الـ ‪ Excel‬من خالل الـ ‪. " Visual Basic 6.0‬‬
‫الجـــــــــزء السادس ‪ -‬موضوعات هامه‬
‫الموضوع األول ‪ :‬التنسيق‬

‫سنقوم بالتطبيقـ على المثال السابق و المطلوب هو ‪:‬‬


‫‪ )1‬عمل اطار للفاتورة‬
‫‪ )2‬تكبير خط الـ ‪ Heading‬للفاتورة‬
‫‪ )3‬جعل األرقام مقربه ألقرب رقمين عشريين‬
‫‪ )4‬تلوين عنوان الفاتورة بلون مخالف و الجسم الفاتورة بلون اخر‬
‫‪ )5‬توسيع حجم الخاليا ‪.‬‬

‫و فى النهايه ستظهر الفاتورة كما بالشكل التالى ‪:‬‬

‫‪vb6 Excel‬‬

‫و سنبدأ األن ببرمجه المشروع الضافة أكواد تمكننا من العمل على الـ ‪ Excel‬ليظهر بهــذا الشــكل من داخــل الـ ‪Visual‬‬
‫‪ Basic 6.0‬مع العلم أنه يمكن عمل ذلك مباشرة من داخل الـ ‪ Excel‬و ال يزال ضمن البرنامج و لكن اذا كنت ال تريد أن‬
‫يفتح أى شخص ملف الـ ‪ Excel‬التابع للبرنامج و تغيير تنســيقه و قمت بحمايتــه فاضــافة أكــواد لتنســيق الـ ‪ Excel‬من‬
‫داخل البرنامج هو الحل األمثل ‪.‬‬

‫‪ -‬نفتح المشروع و نضيف ‪ Form‬جديدهـ تكون بهذا الشكل ‪:‬‬

‫‪vb6 Excel - Display‬‬ ‫‪Excel‬‬


‫و الـ ‪ Form‬عليهــا أداه تســمى ‪ Microsoft Office XP Web Components :‬تجــدها فى الـ ‪Component‬‬
‫‪ Ctrl+T‬قم باضافتها الى شــريط األدوات ثم ادراج ‪ SpreadSheet1‬على الفــورم كمــا فى الصــورة و هــذه األداه غــير‬
‫أداة الـ ‪ OLE‬حيث أنه كان من الصعب التعامل مع تطبيقات الـ ‪ Office‬باداة الـ ‪.... OLE‬‬

‫المطلوب منا عند فتح الـ ‪ Form1‬لتنسيق الفاتورة الخاصه بنا أن نجدها فى األداة و بالتالى فى الحدث ‪Form_Load‬‬
‫نكتب الكود التالى ‪:‬‬
'Microsoft Visual Basic 6.0 Code
'Automate Excel Sheet from Visual Basic 6.0
--------------------------------------------
With Spreadsheet1
.Left = 0
.Top = 0
End With

With oXL
.Workbooks.Open App.Path & "/ExcelFile.Xls", True,
False
.Visible = False
Set oSheet = .ActiveSheet
End With

'Open Our ExcelSheet Here.

oSheet.Cells.Copy
Spreadsheet1.Cells.Paste
view rawgistfile1.vb hosted with ❤ by GitHub

: ‫حيث قمنا بـ‬


‫ تنسيق مكان األداه على الفورم‬-
Excel ‫ بدون اظهار الـ‬Excel ‫ فتح الفاتورة الموجوده بالـ‬-
‫ العمل‬Sheet ‫ تعيين‬-
Sheet ‫ نسخ خاليا الـ‬-
SpreadSheet1 ‫ فى األداه‬Sheet ‫ لصق خاليا الـ‬-

‫ الـذى بـه الفـاتورة حيث‬Excel ‫ فى ملف الـ‬SpreadSheet ‫الخطوه الثانيه هى مفتاح حفظ التغيرات التى تطرأ على الـ‬
‫ نكتب الكــود‬Command1_Click ‫ و فى الحــدث‬Save To Excel ‫ بعنــوان‬Form ‫ على الـ‬Command1 ‫نضــع‬
: ‫التالى‬
: ‫و ما قمنا بعمله هنا هو‬

'Visual Basic 6.0 Excel 2003 automation


'Save Changes & End Excel
‫‪Spreadsheet1.Cells.Range("A1", "L70").Copy‬‬
‫‪oSheet.Cells.Range("A1", "L70").PasteSpecial‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫‪Set oWB = oXL.ActiveWorkbook‬‬
‫‪oWB.Save‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫‪ -‬تحدي ـدـ‪ ‬مــدى الخاليــا المــراد حفظهــا من‪ A1 ‬الى ‪ L70‬و وضــعنا فى االعتبــار أن الفــاتورة سيضــاف عليهــا بيانــات ‪.‬‬
‫‪ -‬نســـــــــــــــــــــــــــــــــــــــــــــــــــــخ الخاليـــــــــــــــــــــــــــــــــــــــــــــــــــــا فى المـــــــــــــــــــــــــــــــــــــــــــــــــــــدى‬
‫‪.‬‬ ‫‪ -‬لصـــــــــــــــــــق الخاليـــــــــــــــــــا فى المـــــــــــــــــــدى المقابـــــــــــــــــــل فى ملـــــــــــــــــــف الـ‪Excel ‬‬
‫‪ -‬حفــــــــــظ التغيــــــــــيرات على ملــــــــــف االكســــــــــل بــــــــــدون اظهــــــــــار رســــــــــائل تنبيــــــــــه منــــــــــه ‪.‬‬

‫خطوه أخيره لكى نتأكدـ من أن تم حفظ التغييرات و هى الحدث ‪ Form_Unload‬عند اغالق الشاشة تظهر رساله "هــل‬
‫تريد الحفظ؟" كالتالى ‪:‬‬
‫‪'Visual Basic 6.0 Excel 2003 automation‬‬
‫‪Dim XX As Integer‬‬
‫)‪XX = MsgBox("Do you want to save changes?", vbYesNoCancel‬‬
‫‪If XX = vbYes Then‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫"‪oXL.ActiveWorkbook.Close True, App.Path & "/ExcelFile.Xls‬‬
‫‪oXL.Quit‬‬
‫‪ElseIf XX = vbNo Then‬‬
‫‪oXL.DisplayAlerts = False‬‬
‫& ‪oXL.ActiveWorkbook.Close False, App.Path‬‬
‫"‪"\ExcelFile.Xls‬‬
‫‪oXL.Quit‬‬
‫‪Else‬‬
‫‪Exit Sub‬‬
‫‪End If‬‬
‫‪view rawgistfile1.vb hosted with ❤ by GitHub‬‬

‫الحــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــظ ‪:‬‬
‫يمكنك االن تنسيق ‪ SpreadSheet‬بالضغط ‪ Right-Click‬عليه حيث تظهر قائمه يمكنــك من خاللهــا تنســيقه مثــل الـ‬
‫‪ Excel‬و حفـــــــــــــــــــــــظ هـــــــــــــــــــــــذه التغـــــــــــــــــــــــيرات كمـــــــــــــــــــــــا فعلنـــــــــــــــــــــــا فى األعلى ‪.‬‬
‫"حسب ‪ Microsoft‬فانه من غير الممكن ربط االكسل بالفيجوال بيزك مباشرة" ‪ ...‬لذا يعتبر هــذا المثــال أقــرب طريقــه‬
‫الى عمــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــل ‪.‬‬
‫يمكنك االن عمل (اضافه ‪ -‬حذف ‪ -‬تعديل ‪ -‬بحث) فى االكسل باستخدام االداه ‪! ......‬‬

You might also like