📘 قراءة مذكّرة تعليم فيجوال بيسك اكسل للمبتدئين والمتوسطين باللغة العربية VBA EXCEL أونلاين
اقتباسات من مذكّرة تعليم فيجوال بيسك اكسل للمبتدئين والمتوسطين باللغة العربية VBA EXCEL
تعليم فيجوال بيسك اكسل للمبتدئين والمتوسطين باللغة العربية
إعداد : محمود زكي الشريف
دروس في
VBA EXCEL
هذه الدروس نتيجة جهد مستفاد من شروحات
وأعمال السادة أساتذتي
قبل أن نبدأ، دعونا نتأكد من أن الأدوات التي نحتاجها موجودة.
أو إصدار أعلى )Excel إذا كنت تستخدم ) 2007
بالاسفل click ". Office button, then click Excel Options
تعليم فيجوال بيسك اكسل للمبتدئين والمتوسطين باللغة العربية
باستخدام "التنفيذ التقائي"، يمكنك نقل البيانات إلى ورقة عمل بمعدل خلية واحدة في كل مرة:
Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object
'Start a new workbook in Excel
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Add
'Add data to cells of the first worksheet in the new workbook
Set oSheet = oBook.Worksheets(1)
oSheet.Range("A1").Value = "Last Name"
oSheet.Range("B1").Value = "First Name"
oSheet.Range("A1:B1").Font.Bold = True
oSheet.Range("A2").Value = "Doe"
oSheet.Range("B2").Value = "John"
'Save the Workbook and Quit Excel
oBook.SaveAs "C:Book1.xls"
oExcel.Quit
يمكن أن يكون نقل البيانات خلية بعد خلية هو الأسلوب المقبول الأمثل إذا كان حجم البيانات صغيرًا. ولديك المرونة الكافية لوضع البيانات في أي مكان في المصنف كما يمكنك تنسيق الخلايا بالشكلٍ المناسب في وقت التشغيل. على الرغم من ذلك، هذا الأسلوب غير مستحسن في حالة وجود بيانات بحجم كبير تريد نقلها إلى مصنف Excel. ينتج عن كل كائن Range تحصل عليه في وقت التشغيل طلب واجهة، لذا يكون نقل البيانات بهذه الطريقة بطيئًا. بالإضافة إلى ذلك، فإن طلبات الواجهة مقيدة بحجم ٦٤ كيلو في نظامي التشغيل Microsoft Windows 95 وWindows 98. وعند وصول طلبات الواجهة إلى ٦٤ كيلو أو تجاوزها لهذا الحجم، قد يتوقف خادم "التنفيذ التلقائي" (Excel) عن الاستجابة أو قد تتلقى أخطاء تشير إلى أن الذاكرة غير كافية.
ومرة أخرى، يعد نقل البيانات خلية بعد خلية مقبولاً فقط للبيانات صغيرة الحجم. إذا كنت بحاجة إلى نقل مجموعات بيانات كبيرة الحجم إلى Excel، فيجب وضع أحد الحلول التي يتم توفيرها لاحقًا في الاعتبار.
للحصول على مزيد من الأمثلة على التعليمات البرمجية للتنفيذ التلقائي لبرنامج Excel، الرجاء مراجعة المقالة التالية في "قاعدة معارف Microsoft" (قد تحتوي هذه المقالة على ارتباطات إلى محتوى باللغة الإنجليزية (محتوى لم تتم ترجمته بعد)):
219151 كيفية تنفيذ Microsoft Excel تلقائيًا من Visual Basic
استخدام التنفيذ التلقائي لنقل صفيف من البيانات إلى نطاق في ورقة عمل
يمكن نقل صفيف من البيانات إلى نطاق من خلايا متعددة دفعة واحدة:
Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object
'Start a new workbook in Excel
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Add
'Create an array with 3 columns and 100 rows
Dim DataArray(1 To 100, 1 To 3) As Variant
Dim r As Integer
For r = 1 To 100
DataArray(r, 1) = "ORD" & Format(r, "0000")
DataArray(r, 2) = Rnd() * 1000
DataArray(r, 3) = DataArray(r, 2) * 0.7
Next
'Add headers to the worksheet on row 1
Set oSheet = oBook.Worksheets(1)
oSheet.Range("A1:C1").Value = Array("Order ID", "Amount", "Tax")
'Transfer the array to the worksheet starting at cell A2
oSheet.Range("A2").Resize(100, 3).Value = DataArray
'Save the Workbook and Quit Excel
oBook.SaveAs "C:Book1.xls"
oExcel.Quit
عندما تقوم بنقل البيانات الخاصة بك باستخدام صفيف بدلاً من استخدام أسلوب خلية بعد خلية، ستلاحظ قوة الأداء عند نقل بيانات بحجم كبير جدًا. لاحظ هذا السطر من التعليمة البرمجية المذكورة أعلاه والذي ينقل بيانات إلى ٣٠٠ خلية في ورقة العمل:
oSheet.Range("A2").Resize(100, 3).Value = DataArray
يمثل هذا السطر طلبي واجهة (أحدهما للكائن Range الذي يقوم بإرجاعه الأسلوب Range وآخر للكائن Range الذي يقوم بإرجاعه الأسلوب Resize). من ناحية أخرى، قد يتطلب نقل البيانات خلية بعد خلية طلبات تخص 300 واجهة لكائنات Range. وحيثما أمكن، تستطيع الاستفادة من نقل البيانات بكميات كبيرة وتقليل عدد طلبات الواجهة التي تجريها.
استخدام التنفيذ التلقائي لنقل مجموعة سجلات ADO إلى نطاق في ورقة عمل
قدّم Excel 2000 أسلوب CopyFromRecordset الذي يتيح لك نقل مجموعة سجلات ADO (أو DAO) إلى نطاق في ورقة عمل. توضح التعليمة البرمجية التالية كيف يمكنك تنفيذ Excel 2000 أو Excel 2002 أو Office Excel 2003 تلقائيًا ونقل محتويات جدول Orders الموجود في Northwind Sample Database (قاعدة بيانات نموذج Northwind) باستخدام الأسلوب CopyFromRecordset.
'Create a Recordset from all the records in the Orders table
Dim sNWind As String
Dim conn As New ADODB.Connection
Dim rs As ADODB.Recordset
sNWind = _
"C:Program FilesMicrosoft OfficeOfficeSamplesNorthwind.mdb"
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
sNWind & ";"
conn.CursorLocation = adUseClient
Set rs = conn.Execute("Orders", , adCmdTable)
'Create a new workbook in Excel
Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Add
Set oSheet = oBook.Worksheets(1)
'Transfer the data to Excel
oSheet.Range("A1").CopyFromRecordset rs
'Save the Workbook and Quit Excel
oBook.SaveAs "C:Book1.xls"
oExcel.Quit
'Close the connection
rs.Close
conn.Close
ملاحظة في حالة استخدام الإصدار Office 2007 من قاعدة بيانات Northwind، يجب استبدال السطر التالي من التعليمة البرمجية في مثال التعليمة البرمجية:
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _ sNWind & ";"
استبدل هذا السطر من التعليمة البرمجية بالسطر التالي من التعليمة البرمجية:
conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _ sNWind & ";"
يوفر برنامج Excel 97 أيضًا أسلوب CopyFromRecordsetولكن يمكنك استخدامه فقط مع مجموعة سجلات DAO. لا يوفر CopyFromRecordset مع برنامج Excel 97 الدعم لـ ADO.
للحصول على مزيد من المعلومات حول استخدام ADO والأسلوب CopyFromRecordset، الرجاء مراجعة المقالة التالية في "قاعدة معارف Microsoft":
246335 كيفية نقل البيانات من مجموعة سجلات ADO إلى برنامج Excel باستخدام التنفيذ التلقائي
فيجوال بيسك اكسل للمبتدئين
كتاب تعليم vba excel
vba excel شرح pdf
برمجة excel بلغة vba
vba excel 2010 شرح
شرح اكواد vba
vba excel تعلم
دورة vba excel
كن محترف vba
vba excel شرح pdf
كتاب تعليم vba excel
دورة vba excel
vba excel 2007 شرح
شرح vba excel
برمجة excel بلغة vba
vba excel 2010 شرح
شرح اكواد vba
حجم الكتاب عند التحميل : 4 ميجا بايت .
نوع الكتاب : pdf.
عداد القراءة:
اذا اعجبك الكتاب فضلاً اضغط على أعجبني و يمكنك تحميله من هنا:
شكرًا لمساهمتكم
شكراً لمساهمتكم معنا في الإرتقاء بمستوى المكتبة ، يمكنكم االتبليغ عن اخطاء او سوء اختيار للكتب وتصنيفها ومحتواها ، أو كتاب يُمنع نشره ، او محمي بحقوق طبع ونشر ، فضلاً قم بالتبليغ عن الكتاب المُخالف:
قبل تحميل الكتاب ..
يجب ان يتوفر لديكم برنامج تشغيل وقراءة ملفات pdf
يمكن تحميلة من هنا 'http://get.adobe.com/reader/'