أكاديمية الصقر للتدريب

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


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





إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables

السلام عليكم ورحمة الله وبركاته إخواني وأحبابي في الله كل عام وأنتم بخير والأمة الإسلامية كلها بخير بمناسبة مقدم أحب ا ..



21-04-2020 11:53 صباحا
YasserKhalil
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10461
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 24
يتابعهم : 1
يتابعونه : 539
قوة السمعة : 36712
عدد الإجابات: 257
 offline 

السلام عليكم ورحمة الله وبركاته

إخواني وأحبابي في الله

كل عام وأنتم بخير والأمة الإسلامية كلها بخير بمناسبة مقدم أحب الشهور إلى قلوبنا جميعاً وهو شهر رمضان ، وبهذه المناسبة أحببت أن أقدم لكم درس تعليمي (ربما تتذكروني في مثل هذه الأيام من كل عام وتدعوا لي بالرحمة والمغفرة وما أحوجنا إليها)

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

يبدأ الكود بالإعلان عن بعض المتغيرات التي سنستخدمها في الكود ، وقبل الإعلان عن المتغيرات سيتعين علينا إضافة بعض المكتبات المرتبطة بهذه المتغيرات
http As MSXML2.XMLHTTP60

هذا المتغير يستخدم في التعامل مع صفحات الويب وسنقوم بإضافة المكتبة Microsoft XTML, v6.0  من خلال القائمة Tools ثم References

html As MSHTML.HTMLDocument

هذا المتغير لتخزين صفحة الـ HTML للصفحة التي سنقوم بزيارتها لبدء التعامل معها في الكود ، والمكتبة المرتبطة بها Microsoft HTML Object Library

أول سطر بالكود سيكون من النوع الثابت وهو عنوان الصفحة المراد التعامل معها ، وهنا العنوان يخص مصر ومدينة الإسكندرية .. بإمكانكم الذهاب للموقع واختيار الدولة ثم اختيار المدينة التي ترغبون بالحصول على الإمساكية منها ، ووضع عنوان الصفحة في الكود في أول سطر
Const sURL As String = "https://www.prayer-times.info/emsakia/2020/egypt/alexandria/"


هذا الجزء من الكود يخصص ويعين قيم للمتغيرات التي وضحناها ثم يقوم بفتح الصفحة وتخزين صفحة الـ HTML بحيث يحتوي على ResponseText أي القيمة التي نحصل عليها كاستجابة من الموقع بعد محاولة فتحه ، وفي النهاية يتم تخزين هذه الاستجابة والتي هي عبارة عن صفحة HTML في متغير باسم html لنتمكن من التعامل معه بعد ذلك في الكود.
    Set http = New MSXML2.XMLHTTP60
    Set html = New MSHTML.HTMLDocument

    With http
        .Open "Get", sURL, False
        .send
        html.body.innerHTML = .responseText
    End With


السطر التالي يقوم بتخزين الجدول الموجود في صفحة الـ HTML في متغير باسم tbl ، وهو الجدول رقم 1 (الصفر في الفهرس يعني أول جدول ..)
Set tbl = html.getElementsByTagName("Table")(0)


الجزء الأخير من الكود يبدأ بمعالجة الجدول حيث يتم عمل حلقات تكرارية لصفوف الجدول ، وداخل الحلقة التكرارية للصفوف حلقة تكرارية للأعمدة ، ثم تخزين البيانات ووضعها في ورقة العمل
    Application.ScreenUpdating = False
        For Each rw In tbl.Rows
            r = r + 1: c = 1
                    
            For Each cl In rw.Cells
                Sheets(1).Cells(r, c).Value = cl.innerText
                c = c + 1
            Next cl
        Next rw
            
        Range("A1").CurrentRegion.Borders.Value = 1
    Application.ScreenUpdating = True


أرجو أن يكون الدرس مفيد لكم ، ولا تنسونا بصالح دعائكم

لمشاهدة الروابط يلزمك التسجيل في أكاديمية الصقر للتدريب

أخوكم في الله / ياسر خليل أبو البراء

21-04-2020 12:24 مساء
مشاهدة مشاركة منفردة [1]
ali mohamed ali
مشرف على منتدى الاكسيل
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 20-11-2017
رقم العضوية : 1757
المشاركات : 1772
الدولة : مصر
الجنس : ذكر
الدعوات : 2
يتابعهم : 0
يتابعونه : 68
قوة السمعة : 9642
عدد الإجابات: 47
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
أحسنت استاذ ياسر ..بالتأكيد موضوع مهم ونحتاجه جميعا خصوصا فى هذه الأيام ,جزاك الله كل خير .. وكل عام وانتم بخير ورمضان كريم أعاده الله علينا جميعا بالخير واليمن والبركات
توقيع :ali mohamed ali
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]
ساهم دائماً فى حل أى مشكلة او أستفسار لديك مع إضافة رد بشكره
أو دعوة لمن قدم اليك المساعدة,فالجميع هنا يعمل على مساعدة
 الاخرين لوجه الله وان تحتسب له اجر عند الله

21-04-2020 12:32 مساء
مشاهدة مشاركة منفردة [2]
محمد امين
عضو
معلومات الكاتب ▼
تاريخ الإنضمام : 19-02-2019
رقم العضوية : 11590
المشاركات : 3
الجنس : ذكر
تاريخ الميلاد : 1-1-1990
يتابعهم : 1
يتابعونه : 0
قوة السمعة : 16
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
بصراحة الموضوع اكثر من رائع
ولكن لو محتاج اخد اي محتوي اخر داخل الصفحة مش شرط الجدول , ماذا سيكون شكل الكود ؟

21-04-2020 12:58 مساء
مشاهدة مشاركة منفردة [3]
محمد حسن المحمد
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 24-08-2017
رقم العضوية : 80
المشاركات : 723
الجنس : ذكر
تاريخ الميلاد : 14-5-1965
الدعوات : 2
يتابعهم : 69
يتابعونه : 32
قوة السمعة : 4115
عدد الإجابات: 4
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
3dlat.com_141521372033dlat.com_14152137203


3dlat.net_06_17_3221_da0fc7b5e8957
توقيع :محمد حسن المحمد

الرفقُ ما كان في شيءٍ إلاَّ زانهُ ، وما نُزع من شيءٍ إلاَّ شانُه ،اللينُ في الخطاب ، البسمةُ الرائقةُ على المحيا، 
الكلمةُ الطيبةُ عند اللقاء ، هذه حُلَلٌ منسوجةٌ يرتديها السعداء


21-04-2020 02:01 مساء
مشاهدة مشاركة منفردة [4]
YasserKhalil
مراقب عام
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10461
الجنس : ذكر
تاريخ الميلاد : 1-10-1978
الدعوات : 24
يتابعهم : 1
يتابعونه : 539
قوة السمعة : 36712
عدد الإجابات: 257
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
بارك الله فيكم إخواني ومشكور على مروركم العطر
فيما يخص سؤال الأخ محمد أمين
نعم يمكنك استخراج أي شيء من صفحة الـ HTML .. لكن الدرس هنا ركزت على الجداول .. يمكن تصفح نفس الموقع والدخول على مدن أخرى وتغيير عنوان الصفحة في أول سطر بالكود وسيعمل معك إن شاء الله.

21-04-2020 03:40 مساء
مشاهدة مشاركة منفردة [5]
Yasser Elaraby
المشرف العام
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 1
المشاركات : 1293
الجنس : ذكر
الدعوات : 13
يتابعهم : 2
يتابعونه : 726
قوة السمعة : 9894
موقعي : زيارة موقعي
عدد الإجابات: 9
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
0146
توقيع :Yasser Elaraby
663013020


21-04-2020 03:44 مساء
مشاهدة مشاركة منفردة [6]
الصقر
مدير المنتدى
rating
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 2
المشاركات : 1824
الجنس : ذكر
الدعوات : 21
يتابعهم : 0
يتابعونه : 749
قوة السمعة : 19987
موقعي : زيارة موقعي
عدد الإجابات: 2
 offline 
look/images/icons/i1.gif إمساكية رمضان 2020 داخل الإكسيل Get Ramadan Schedule In VBA Scrape Tables
موضوع رائع 123
كل عام وأنت بخير والى الله أقرب 
توقيع :الصقر

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





الكلمات الدلالية
إمساكية ، رمضان ، 2020 ، داخل ، الإكسيل ، Ramadan ، Schedule ، Scrape ، Tables ،


 










اخلاء مسئولية: يخلى منتدى أكاديمية الصقر للتدريب مسئوليته عن اى مواضيع او مشاركات تندرج داخل الموقع ويحثكم على التواصل معنا ان كانت هناك اى إنتهاكات تتضمن اى انتهاك لحقوق الملكية الفكرية او الادبية لاى جهة - بالتواصل معنا من خلال نموذج مراسلة الإدارة .وسيتم اتخاذ الاجراءات اللازمة.
سياسة النشر: التعليقات المنشورة لا تعبر عن رأي منتدى أكاديمية الصقر للتدريب ولا نتحمل أي مسؤولية قانونية حيال ذلك ويتحمل كاتبها مسؤولية النشر.

الساعة الآن 02:51 صباحا