السبت، 14 سبتمبر 2019

4:31 م

ترحيل البيانات من ورقة عمل الى اخرى بناء على مقارنة عمودين من البيانات Excel VBA Macro : Transfer Data Form Sheet To Other Sheet

بسم الله الرحمن الرحيم
اهلا بحضراتكم متابعى موقع عالم الاوفيس


 درس جديد من دروس اكسل
ترحيل البيانات من ورقة عمل sheet  الى ورقة عمل اخرى بناء على شرط معين وهو مقارنة عمودين بهم مجموعة من البيانات
نرى المثال


فى هذا المثال يوجد لدينا مجموعة من البيانات والتى تعبر عن تاريخ ورقم صك معين ومبلغ الصك وعمود رابع بة رقم صك اخر
الشرط هنا ناة فى حالة تساوى القيمة فى العمود الرابع يتم عدم تراحيل البيانات الخاصة بهذا الصف 
كيف نقوم بعمل هذا الكود 
اولا ندخل الى المطور Devlober 
2- insert module
Sub test()
Dim lr As Long
Dim erow As Long
Dim i As Integer
lr = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
   For i = 2 To lr
     If Cells(i, 2) <> Cells(i, 4) Then
       erow = Sheet2.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
        Range(Cells(i, 1), Cells(i, 3)).Copy Destination:=Sheets("sheet2").Cells(erow, 1)
          End If
    Next i
End Sub
وبهذا نكون قد ادرجنا الكود الخاص بنا والذى من خلالة يتم المقارنة بين البيانات وترحيلها الى شيت اخر

لتحميل ملف العمل من هنا
لمشاهدة شرح الفيديو

11:34 ص

استخدام الدالة Sumif للجمع بين تاريخين Excel Sumif Between Two Dates


بسم الله الرحمن الرحيم
اهلا بكم متابعى موقع عالم الاوفيس
درس جديد من دروس الاكسل وشرح دالة جديدة من دوال الاكسل
Excel Sumif  Between Two Dates
استخدام الدالة  Sumif  للجمع بين تاريخين




نعلم جميعنا انة  مع Excel ، يصبح من السهل جدًا إضافة أو طرح قيمة رقمية بين تاريخين كمعيار / شرط. وفى هذاالدرس سنتعلم كيفية جمع مجموعة من القيم بين تاريخين محددين ومن هنا يمكننا إضافة أو طرح القيم بين تاريخين محددين باستخدام الدالتين : 'SUMIF' و 'SUMIFS'.

سنشرح اليوم الدالــــة   SUMIF

بناء الجملة العام لوظيفة 'SUMIF' كما يلي:
sum if=(range, criteria,sum_range)
يحتوي بناء جملة الدالة SUMIF على الوسيطتين التاليتين:
Range : مطلوب ، يمثل نطاق الخلايا الذي نرغب في تطبيق المعايير ضده
criteria: مطلوبة ، تمثل الشرط أو المعايير الواجب توافرها. يمكن توفير ذلك في شكل رقم أو تاريخ أو نص أو مرجع خلية أو تعبير منطقي أو أي وظيفة أخرى في Excel
sum_range: اختياري يمثل الخلايا المطلوب جمعها إذا تم استيفاء المعايير. يجب الإشارة إلى هذه الوسيطة فقط عندما نرغب في جمع خلايا غير تلك المحددة في وسيطة النطاق. إذا تم حذفها ، فستجمع الدالة نفس الخلايا التي يتم تطبيق الشرط / المعايير عليها.

وهنا يتضح لنا انةعندما يتم تحديد معايير متعددة في وظيفة "SUMIF" ، يتم تحقيق ذلك باستخدام عوامل التشغيل المنطقية / المقارنة. نظرًا لأننا نحتاج إلى جمع أو طرح قيم الخلايا الواقعة بين تاريخين ، لذلك يجب اختبار كلا التاريخين (المشار إليهما كشرط / معايير) في نفس النطاق. وبالتالي ، يتم تطبيق وظائف متعددة 'SUMIF' لطرح أو إضافة القيم الناتجة في صيغة واحدة.

سيتم ذكر معايير تاريخ محددة في كل وظيفة "SUMIF" ، وسيتم دمج كلتا الوظيفتين في صيغة واحدة للحصول على القيمة النهائية من خلال طرح أو إضافة القيم الناتجة لكل وظيفة.

هذا سيبدو بناء الجملة أدناه:
SUMIF (range, criteria1, [sum_range]) - SUMIF (range, criteria2, [sum_range])
سيكون تاريخ البدء هو المعيار 1 ، وتاريخ الانتهاء سيكون المعيار 2.
إذا كان لدينا جدول يتكون من عمودين: أحدهما يحتوي على تواريخ والآخر يحتوي على قيمة المعاملة المنجزة. لذلك إذا كنا نرغب في جمع المعاملات التي تتم بعد التاريخ: 15/01/2019 ، وتلك التي تتم قبل التاريخ: 20/03/2019 ، أي معاملات المبلغ إذا كان التاريخ المقابل بين 15/01/2019 و 20/03/2019.




ثم نستخدم وظيفة sumif. يتم ذلك عن طريق تطبيق الصيغة التالية:

=SUMIF($A$2:$A$6,”>”$E$2,”$B$2:$B$6)-SUMIF($A$2:$A$6,”<”$E$3,”$B$2:$B$6)


يمكننا أن نرى أن أول وظيفة SUMIF تحتوي على تاريخ البدء كمعايير ذات تعبير منطقي "أكبر من" ومرجع الخلية (أي الخلية E2) ، مقترنة بعلامة "&" ، بينما تحتوي دالة SUMIF الثانية على تاريخ الانتهاء كمعايير مع التعبير المنطقي "أقل من" ومرجع الخلية (وهذا هو الخلية E3) ، جنبا إلى جنب مع علامة "&". وسيطة النطاق والوسيطة sum_range المتوفرة في كلا SUMIF متشابهة.
 وبهذا نكون انتهينا من شرح الدالة  SUMIF 

الخميس، 12 سبتمبر 2019

1:14 م

Do While Loop Excel VBA شرح الحلقات التكرارية


بسم الله الرحمن الرحيم

Do While Loop Excel VBAشرح الحلقات التكرارية




اهلا بكم متابعى موقع عالم الاوفيس


مازلنا نتواصل معكم فى شرح الحلقات التكرارية فى الاكسل Loop in Excel VBA

كنا شرحنا فى الدرس الاول بالتفصيل الحلقة التكرارية  For  Next Loop

الدرس الثانى

الحلقة التكرارية  Do While Loop

للحصول على أقصى استفادة من Excel و VBA ، تحتاج إلى معرفة كيفية استخدام الحلقات بكفاءة.

في VBA ، تسمح لك الحلقات بتصفح مجموعة من الكائنات / القيم وتحليلها واحدة تلو الأخرى. يمكنك أيضًا تنفيذ مهام محددة لكل حلقة.

فيما يلي مثال بسيط لاستخدام حلقات VBA في Excel.
وفى هذا الدرس يتبين لنا ان الحلقة التكرارية "Do While"  تتيح لك التحقق من وجود حالة وتشغيل الحلقة أثناء استيفاء هذا الشرط (أو هو TRUE).

يوجد نوعان من بناء الجملة في Do While Loop.

Do [While condition]
[Code block to Execute]
Loop

والنوع الثانى

Do
[Code block to Execute]
Loop [While condition]

الفرق بين هذين النوعين هو أنه في الأول ، يتم التحقق من شرط الشرط أولاً قبل تنفيذ أي كتلة تعليمات برمجية ،
 وفي الحالة الثانية ، يتم تنفيذ كتلة التعليمات البرمجية أولاً ثم يتم التحقق من شرط الشرط.

هذا يعني أنه إذا كانت الحالة هي False في كلتا الحالتين ، فسوف يستمر تشغيل الرمز مرة واحدة على الأقل في الحالة الثانية (حيث يتم التحقق من شرط "While" بعد تنفيذ الرمز مرة واحدة).

الآن ، دعونا نرى بعض الأمثلة على استخدام Do While loops في VBA.

المثال على ذلك

- إضافة أول 10 أعداد صحيحة موجبة باستخدام VBA

افترض أنك تريد إضافة أول عشرة أعداد صحيحة موجبة باستخدام Do Do loop في VBA.

للقيام بذلك ، يمكنك استخدام حلقة Do While حتى الرقم التالي أقل من أو يساوي 10. بمجرد أن يزيد الرقم عن 10 ، ستتوقف الحلقة.

والان اتفضل  كود VBA الذي سيقوم بتشغيل الحلقة التكرارية "Do While" وإظهار النتيجة في شكل  رسالة.

Sub AddFirst10PositiveIntegers()
Dim i As Integer
i = 1
Do While i <= 10
Result = Result + i
i = i + 1
Loop
MsgBox Result
End Sub

وكما لاحظنا فى هذا الكود تستمر الحلقة أعلاه في العمل إلى أن تصبح قيمة المتغير "i" هي 11. بمجرد أن تصبح القيمة =  11 ، عندها تنتهي الحلقة التكاراية  (اى عندما تصبح الحالة "خطأ").

ضمن هذة الحلقة التكارية  ، استخدمنا متغير النتيجة" Result "الذي يحتفظ بالقيمة النهائية بمجرد اكتمال الحلقة  التكرارية، يعرض صندوق رسالة قيمة المتغير " Result ".

                                                      لتحميل ملف العمل من هنا
نلتقى ان شاء الله فى الدرس القادم واستكمال شرح الحلقات التكرارية 
اذا اعجبك الدرس لاتنسى مشاركتة على وسائل التواصل الاجتماعى

الأربعاء، 11 سبتمبر 2019

2:04 م

For Next Loop (with Examples) Excel VBA شرح الحلقات التكرارية

For Next Loop Excel VBAشرح الحلقات التكرارية


اهلا بكم متابعى موقع عالم الاوفيس


نقدم لكم اليوم اول حلقة من دروس الحلقات التكرارية فى Excel VBA  وسنقوم بعمل ملف كامل عن الحلقات التكراية مع الامثلة المختلفة .للحصول على أقصى استفادة من Excel و VBA ، تحتاج إلى معرفة كيفية استخدام الحلقات التكرارية  بكفاءة.

في VBA ، تسمح لك الحلقات بتصفح مجموعة من الكائنات / القيم وتحليلها واحدة تلو الأخرى. يمكنك أيضًا تنفيذ مهام محددة لكل حلقة.

فيما يلي مثال بسيط لاستخدام حلقات VBA في Excel.

افترض أن لديك مجموعة بيانات وتريد تمييز كل الخلايا في صفوف متساوية. يمكنك استخدام حلقة VBA لتصفح النطاق وتحليل رقم كل خلية. إذا اتضح أنه متساوٍ ، فأنت تعطيه لونًا ، وإلا ستتركه كما هو.

الآن ، هذا بالطبع بسيط جدًا في حلقات Excel VBA (ويمكنك أيضًا القيام بذلك باستخدام التنسيق الشرطي).

في الحياة الواقعية ، يمكنك القيام بالكثير مع حلقات VBA في Excel والتي يمكن أن تساعدك في أتمتة المهام.

فيما يلي بعض الأمثلة العملية حيث يمكن أن تكون حلقات VBA مفيدة:

  • تنفيذ حلقات عبر نطاق من الخلايا وتحليل كل خلية (قم بتمييز الخلايا التي تحتوي على نص محدد فيه).
  • تكرار جميع أوراق العمل والقيام بشيء مع كل منها (مثل حمايتها / عدم حمايتها).
  • مرر جميع المصنفات المفتوحة (واحفظ كل مصنف أو أغلق كل المصنف باستثناء المصنف النشط).
  • تنفيذ حلقة من خلال جميع الأحرف في خلية (واستخراج الجزء الرقمي من سلسلة).
  • حلقة من خلال جميع القيم مجموعة.
  • مرر جميع المخططات / الكائنات (واعطي حدودًا أو غير لون الخلفية).

الآن لاستخدام الحلقات التكارية  في Excel VBA بشكل أفضل ، تحتاج إلى معرفة الأنواع المختلفة الموجودة وبناء الجملة الصحيح لكل منها.
تتيح لك حلقة "FOR/ NEXT" الانتقال إلى مجموعة من التعليمات البرمجية لعدد مرات محددة.

على سبيل المثال ، إذا طلبت منك إضافة الأعداد الصحيحة من 1 إلى 10 يدويًا ، فستقوم بإضافة الرقمين الأولين ، ثم إضافة الرقم الثالث إلى النتيجة ، ثم إضافة الرقم الرابع إلى النتيجة ، إلخ ..


أليس كذلك؟

يتم استخدام نفس المنطق في الحلقة التكرارية  (For – Next) في VBA.

يمكنك تحديد عدد المرات التي تريد تشغيل الحلقة فيها وكذلك تحديد ما تريد أن يفعله الكود في كل مرة يتم فيها تشغيل الحلقة.

فيما يلي بناء جملة الحلقة التالية:
For Counter = Start To End [Step Value]
[Code Block to Execute]
Next [counter]

في حلقة For Next ، يمكنك استخدام عداد (أو أي متغير) سيتم استخدامه لتشغيل الحلقة. يتيح لك هذا العداد تشغيل هذه الحلقة لعدد مرات مطلوبة.

على سبيل المثال ، إذا أردت إضافة أول 10 أعداد صحيحة موجبة ، فستكون قيمة العداد من 1 إلى 10.

دعنا نلقي نظرة على بعض الأمثلة لنفهم بشكل أفضل كيف تعمل الحلقة التالية.

مثال 1 - إضافة أول 10 أعداد صحيحة موجبة

يوجد أدناه الكود الذي سيضيف أول 10 أعداد صحيحة موجبة باستخدام حلقة For Next.

سيعرض بعد ذلك مربع رسالة يوضح مجموع هذه الأرقام.
Sub AddNumbers()
Dim Total As Integer
Dim Count As Integer
Total = 0
For Count = 1 To 10
Total = Total + Count
Next Count
MsgBox Total
End Sub
في هذا الرمز ، يتم تعيين قيمة Total على 0 قبل الدخول في حلقة For Next.

بمجرد دخوله إلى الحلقة ، فإنه يحتفظ بالقيمة الإجمالية بعد كل حلقة. لذلك بعد الحلقة الأولى ، عندما يكون العداد 1 ، تصبح قيمة "الإجمالي" 1 ، وبعد الحلقة الثانية تصبح 3 (1 + 2) ، وهكذا.

وأخيرًا ، عندما تنتهي الحلقة ، يحتوي متغير "Total" على مجموع الأعداد الصحيحة العشرة الأولى.


ثم يعرض MsgBox النتيجة ببساطة في مربع رسالة.

وسيتم شرح بقية الحلقات التكرارية تباعا ان شاء الله 
اذا اعجبك المقال لاتنسى مشاركتة عبر وسائل التواصل الاجتماعى 

الثلاثاء، 10 سبتمبر 2019

7:12 ص

عالم الاوفيس: كيفية عمل انذار على سطح المكتب اوتوماتيكيا فى تاريخ معين بدون فتح الاكسل excel macro: Automatically Open Specific Excel File on Startup

بسم الله الرحمن الرحيم
كيفية عمل انذار على سطح المكتب اوتوماتيكيا فى تاريخ معين بدون فتح الاكسل بمجرد تشغيل جهاز الكمبيوتر



اهلا بحضراتكم متابعى موقع عالم الاوفيس
درس اليوم سؤال من احد الاصدقاء يسال عن كيفية عمل انذار على سطح المكتب اوتوماتيكيا فى تاريخ معين بدون فتح الاكسل
كما نعلم انة لابد من تشغيل ملف الاكسل حتى تظهر جميع التعليمات البرمجية الموجودة فية ولكن اليوم الموضوع سيختلف قليلا 
بدلا من ان نفتح نحن ملف الاكسل بانفسنا سيقوم بذلك جهاز الكمبيوتر بدلا منا 

كيف يتم هذا الاجراء؟

او لا نحدد ملف العمل الذ نريد ان يتم فتحة من خلال عملية تشغيل الكمبيوتر Turn On  ثم نقوم بعمل اختصار من الملف على سطح المكتب 

ثم نقوم بعمل نسخ لهذا الاختصار ونبحث عن فولدر فى نظام التشغيل Start Up ثم نضغط علية كليك يمين بالماوس ونختار 
   
Explor

سوف يفتح لنا نافذة فارغة نلصق فيها الملف الذى نريد ان يعمل عند بداية تشغيل الجهاز

 لو انت عندك سيستم اخر غير Windows 7

سوف تستخدم هذا الكود لفتح ملف Start Up

 shell:startup
لمعرفة طريقة عمل الملف يرجى مشاهدة الفيديو

الاثنين، 9 سبتمبر 2019

5:31 ص

Excel VBA : Add a spin button

بسم الله الرحمن الرحيم

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

يمكنك استخدام  Spin Button لإدخال مجموعة من القيم أو تغييرها بسرعة.
 Spin Button يجعل من السهل زيادة أو إنقاص قيمة ، مثل زيادة الأرقام أو الوقت أو التاريخ. لزيادة القيمة ، انقر فوق السهم لأعلى ؛ لتقليل القيمة ، انقر فوق السهم لأسفل.

 يمكن للمستخدم أيضًا كتابة قيمة نصية مباشرة في الخلية أو مربع النص المقترن. استخدم  Spin Button، على سبيل المثال ، لتسهيل إدخال شهر أو يوم أو رقم سنة أو زيادة مستوى الصوت.

إضافة( spin button (ActiveX control



في علامة التبويب المطور ، في المجموعة عناصر التحكم ، انقر فوق إدراج ، ثم ضمن عناصر تحكم ActiveX ، انقر فوق زر  Spin Button


مجموعة الضوابط

انقر فوق موقع ورقة العمل حيث تريد أن تظهر الزاوية العلوية اليمنى  Spin Button.

لتحرير عنصر التحكم ، تأكد من أنك في وضع التصميم. في علامة تبويب المطور ، في مجموعة عناصر التحكم ، قم بتشغيل صورة زر وضع التصميم.

لتحديد خصائص التحكم  Properties. ، في علامة تبويب المطور ، في مجموعة عناصر التحكم ، انقر فوق خصائص زر Properties. لتغيير وتعديل خصائص الاداة  من حيث اللون او الحجم الى اخرة
لمشاهدة كيفية عمل الاداة يرجى مشاهدة شرح الفيديو


لتحميل ملف العمل رابط مباشر على الميديا فاير مـــــــن هـــــــــنا

الأحد، 8 سبتمبر 2019

12:55 م

عالم الاوفيس :إخفاء كل أوراق العمل باستثناء الورقة النشطة Excel VBA:Hide All Worksheets Except the Active Sheet

إخفاء كل أوراق العمل باستثناء الورقة النشطة

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

ومازلنا نتواصل فى شرح سلسلة جديدة من شروحات اكسل vba 

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

كما ذكرنا سابقا انة بالفعل  استخدام وحدات ماكرو Excel الى تسريع العمل وتوفير الوقت والمجهود .

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


الكود الثانى 

إخفاء كل أوراق العمل باستثناء الورقة النشطة



إذا كنت تعمل على تقرير أو لوحة معلومات وتريد إخفاء كل ورقة العمل باستثناء الورقة التي تحتوي على تقرير / لوحة معلومات ، يمكنك استخدام  هذا الكود.
ub HideAllExceptActiveSheet()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> ActiveSheet.Name Then ws.Visible = xlSheetHidden
Next ws
End Sub
وفى هذا الكود نقوم بعمل حلقة تكرارية للمرور على كل اوراق العمل الموجودة فى ملف العمل لاخفاء جميع اوراق العمل ماعدا ورقة العمل النشطة 
وبذلك نكون قد انتهينا اليوم من شرح هذا الكود ضمن مكتبة اكواد Excel VBA 
ونلتقى ان شاء الله فى الدرس القادم 

من نحن

authorمرحبا، أسمي عماد غازى وهذه مدونتي أسعى دائما لأقدم لكم أفضل المواضيع الخاصة بالاوفيس
المزيد عني →

التصنيفات

نموذج الاتصال

الاسم

بريد إلكتروني *

رسالة *

إجمالي مرات مشاهدة الصفحة