logo

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



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




اضافة رد جديد اضافة موضوع جديد

الصفحة 2 من 8 < 1 2 3 4 8 > الأخيرة


05-08-2018 03:58 مساءً
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10534
رصيد العضو : 3
الجنس :
تاريخ الميلاد : 1-10-1978
الدعوات : 24
قوة السمعة : 36769
الاعجاب : 191
السلام عليكم ورحمة الله وبركاته

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

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

بفرض أن لديك ملف نصي (مرفق في الموضوع) والملف به أرقام موبايلات ورقم الموبايل مكون من 11 رقم ، والأرقام يجب أن تبدأ بـ 010 أو 011 أو 012 أو 015 ..
تلك هي المعطيات الخاصة بالموضوع

النتائج المتوقعة
استخراج الأرقام المطابقة للشروط وهي 5 أرقام في الملف النصي ، ووضعها في العمود الأول في ورقة العمل


01251056565
01024698500
01124710035
01265432178
01563852014


أرجو أن يكون هناك تفاعل بالموضوع لتتعلموا المزيد والمزيد

**************
بعد العديد من المشاركات في الموضوع ـ أقدم لكم الملف النهائي بالكود الذي يقوم باستخراج أرقام الموبايل من الملف النصي باستخدام الـ Regex

تحميل الملف من هنا

**************

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

أثارت هذه المشاركة إعجاب: hassona229،



look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 05:18 مساءً   [1]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1309
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 4-7-1990
الدعوات : 59
قوة السمعة : 4570
الاعجاب : 0
موقعي : زيارة موقعي
ارجوا اعادة رفع الملف مرة اخرى استاذ ياسر حيث يوجد خطأ في التحميل مع ان مؤشر التحميل يظهر عدد مرات التحميل ولا يوجد تحميل
وارجوا ايضاح هل المطلوب مطلوب بمعادلة ام كود برمجي


عفوا تم التحميل هههههه



توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب

look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 06:29 مساءً   [2]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1309
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 4-7-1990
الدعوات : 59
قوة السمعة : 4570
الاعجاب : 0
موقعي : زيارة موقعي
ما رايك بالكود التالى على فرض اننا نقلنا البيانات من الملف النصي ووضعنها بشيت اكسيل من الخلية a1

نضع الكود التالى
CODE
Sub show_fon_nm()
Dim i     As Integer
Dim fr    As String
Dim ed    As Integer
Dim lr    As Long
Dim rng   As Range


  ActiveSheet.Range("b2:b1000").ClearContents
      For Each rng In ActiveSheet.Range("A1:A" & ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row)
         fr = ""
         ed = 0
         For i = 1 To Len(rng)
                If IsNumeric(Mid(rng, i, 1)) Then
                    fr = fr & Mid(rng, i, 1)
                    ed = ed + 1
                ElseIf ed = 11 And Mid(fr, 1, 1) = 0 And Mid(fr, 2, 1) = 1 Then
                    lr = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
                    Cells(lr + 1, 2).NumberFormat = "@"
                    Cells(lr + 1, 2) = fr
                    fr = ""
                End If
         Next i
                If ed = 11 And Mid(fr, 1, 1) = 0 And Mid(fr, 2, 1) = 1 Then
                    lr = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
                    Cells(lr + 1, 2).NumberFormat = "@"
                    Cells(lr + 1, 2) = fr
                    fr = ""
                End If
      Next rng
End Sub



صورة بالنتيجة
NDIxMzEx111111111111111111111111111

واذا اراد احدم شرح انا تحت امرهم

MzE3NjQ0MQ7979Untitled

اسف الكود طويل شويه ممكن احد الخبراء يعمله في سطرين بس عندنا في مصر في طنطا الارياف نقول كل برغوت على اد ده وانا اسف لسه مبتدأ :) biggrin2
 
 




توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب

look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 07:50 مساءً   [3]
معلومات الكاتب ▼
تاريخ الإنضمام : 22-08-2017
رقم العضوية : 43
المشاركات : 853
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-5-1989
الدعوات : 1
قوة السمعة : 6611
الاعجاب : 2
(على فكرة الملف غير قابل للتحميل بل تظهر هذه الصورة)
NDYzNjMxMQ7979YasserCapture
ما رأيك بهذا الكود (انا أخذت فقط 01 لضيق الوقت) يمكن ادراج بقية الارقام (05 و07 ....) من خلال Arrary يجمعهم واستعمال دالة Match
CODE

Option Explicit
Sub splt()
Dim a
Dim x%
Dim m%: m = 1
Dim Phone_array()
 Range("c:c").ClearContents
a = Split(Trim(Range("a1")), " ")

For x = 1 To UBound(a) - LBound(a)
 If Mid(a(x - 1), 1, 2) = "01" And Len(a(x - 1)) = 11 Then
  ReDim Preserve Phone_array(1 To m)
   Phone_array(m) = a(x - 1)
   m = m + 1
   End If
   Next
    Range("c1").Resize(m - 1) = Application.Transpose(Phone_array)
    Range("c1").Resize(m - 1).NumberFormat = "@"
    Erase a: Erase Phone_array
End Sub


 
 





look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 08:54 مساءً   [4]
معلومات الكاتب ▼
تاريخ الإنضمام : 03-10-2017
رقم العضوية : 852
المشاركات : 1580
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 1-9-1995
الدعوات : 5
قوة السمعة : 10861
الاعجاب : 6
موقعي : زيارة موقعي
الهووم وورك امستر biggrin2
CODE
Sub M_Yasser()
Dim lrw, i%, arr()
Range("B:B").ClearContents
lrw = Range("A:A").Find("*", , , , , 2).Row
ReDim arr(1 To lrw)
    For i = 1 To lrw
       If Left(Cells(i, 1).Text, 2) = "01" Then arr(i) = "'" & Cells(i, 1).Text
    Next i
       Cells(1, 2).Resize(UBound(arr)) = Application.Transpose(arr)
End Sub




look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 09:53 مساءً   [5]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1309
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 4-7-1990
الدعوات : 59
قوة السمعة : 4570
الاعجاب : 0
موقعي : زيارة موقعي
الهوم بالشرح لكل مستر للمستر يا مستر هههههههههه



توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب

look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 10:50 مساءً   [6]
معلومات الكاتب ▼
تاريخ الإنضمام : 22-08-2017
رقم العضوية : 43
المشاركات : 853
رصيد العضو : 0
الجنس :
تاريخ الميلاد : 1-5-1989
الدعوات : 1
قوة السمعة : 6611
الاعجاب : 2
ممكن هذا الكود يقوم بالعمل كاملاً (تم وضع النص في الخلية A1)
مع انه أفضّل انا استعمال (Regular Expression (Reg_Ex لكن للاسف خبرتي فيها ليست كفاية
اتمنى من الأخ ياسر وضع بعض الدروس عنها
CODE

Option Explicit
Sub splt()

Dim a
Dim x%
Dim m%: m = 1
Dim r As Byte, t As Byte
Dim s As Byte, v As Byte
Dim verification As Byte
Dim Phone_array()

 Range("c:c").ClearContents
a = Split(Trim(Range("a1")), " ")
For x = 1 To UBound(a) - LBound(a)
    r = -(Mid(a(x - 1), 1, 3) = "010")
    t = -(Mid(a(x - 1), 1, 3) = "011")
    s = -(Mid(a(x - 1), 1, 3) = "012")
    v = -(Mid(a(x - 1), 1, 3) = "015")
    verification = (r + s + t + v) + Len(a(x - 1))
        If verification = 12 Then
         ReDim Preserve Phone_array(1 To m)
         Phone_array(m) = a(x - 1)
         m = m + 1
        End If
Next
On Error GoTo End_Sub
    Range("c1").Resize(m - 1) = Application.Transpose(Phone_array)
    Range("c1").Resize(m - 1).NumberFormat = "@"
End_Sub:
Err.Clear
    Erase a: Erase Phone_array
End Sub





look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 10:57 مساءً   [7]
معلومات الكاتب ▼
تاريخ الإنضمام : 03-10-2017
رقم العضوية : 852
المشاركات : 1580
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 1-9-1995
الدعوات : 5
قوة السمعة : 10861
الاعجاب : 6
موقعي : زيارة موقعي
الحل السابق كان للارقام البادئة من 01 فقط
حل اخر على السريع كدا للارقام البادئة ب 010 و 011 و 012 و 015
ودا شرح سريع بروضوا معلش مشغول اوى اليومين دول يأبو الدهب 81
شوفها وان وقفت معاك حاجه قولى وانا معاك smile

CODE
Sub M_Yasser2()
'Variant ومتغير من النوع Integer اعلان عن متغيرين من النوع
Dim lrw, i%, arr()
'حذف نطاق النتائج
Range("B:B").ClearContents
':) تحديد أخر صف ولو مفيش بيانات فى العمود الاول هيجيب خطا بس انا مزاجى كدا
lrw = Range("A:A").Find("*", , , , , 2).Row
'اعادة تعيين ابعاد المصفوفة لتكون من 1 لرقم اخر صف به بيانات
ReDim arr(1 To lrw)
'بدأ حلقة تكرارية من 1 حتى اخر صف به بيانات
    For i = 1 To lrw
    '(010,011,012,015) اختبار شرط وجود الارقام التالية بكل خلية بها الرقم
    'اذا تحقق الشرط يتم تعبئة المصفوفة بالرقم
       If IsNumeric(Application.Match(Left(Cells(i, 1).Text, 3), Array("010", "011", "012", "015"), 0)) Then arr(i) = "'" & Cells(i, 1).Text
    ':D اعادة الحلقة التكرارية مش حلقة افتح الباب
    Next i
    'حتى اخر صف فيه بيانات داخل المصفوفة B1 ادخال بيانات المصفوفة بالخلايا من الخلية
       Cells(1, 2).Resize(UBound(arr)) = Application.Transpose(arr)
    'كدا شطبنا والسلام عليكم
End Sub




look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  05-08-2018 11:43 مساءً   [8]
معلومات الكاتب ▼
تاريخ الإنضمام : 03-10-2017
رقم العضوية : 852
المشاركات : 1580
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 1-9-1995
الدعوات : 5
قوة السمعة : 10861
الاعجاب : 6
موقعي : زيارة موقعي
حل أخر للارقام البادئة ب 010 و 011 و 012 و 015
دون استخدام المصفوفات

CODE
Sub M_Yasser3()
Dim lrw, i%
Range("B:B").ClearContents
lrw = Cells(Rows.Count, 1).End(3).Row
    For i = 1 To lrw
    Select Case Left(Cells(i, 1), 3)
        Case "010", "011", "012", "015"
            Cells(i, 2) = "'" & Cells(i, 1).Text
        End Select
    Next i
End Sub




look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  06-08-2018 12:07 صباحاً   [9]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 14
المشاركات : 1309
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 4-7-1990
الدعوات : 59
قوة السمعة : 4570
الاعجاب : 0
موقعي : زيارة موقعي
هههههه مصمم يا حبيب الملايين
اكمل المطلوب ثم ارسل
وانته مصمم ليه ان الامر بطلبه ليا نحن في حلقات تعليمية اى المفروض يدخل هنا من لا يعمل ومن يعلم اى يجب ان نراعي ان هناك من لا يعلم ويريد ان يتعلم
وشكرا على الشرح وبارك الله فيك

ولكن في كلا الكودين لم تحقق المطلوب ولم يعطي نتائج no_1 biggrin2
وعليكم السلام ورحمة الله وبركاته
"اوعى تكون بتزعل زى استاذ ياسر دائما احب الهزار في كلامى علشان ارفرش الجو والكمبيوتر كمان :) "



توقيع :محمود ابو الدهب
لى عظيم الشرف بالانضمام لهذا الصرح العظيم
وكم أتمنى من الله
ان يعيننى ويعلمنى من علمة الواسع فهو ولي ذالك وهو على كل شي قدير

تحياتى وتقدير للجميع  محمود ابوالدهب

look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  06-08-2018 12:36 صباحاً   [10]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10534
رصيد العضو : 3
الجنس :
تاريخ الميلاد : 1-10-1978
الدعوات : 24
قوة السمعة : 36769
الاعجاب : 191
بارك الله فيكم إخواني وأحبابي في الله
صراحة لم أتوقع كل هذا التفاعل المثمر في الموضوع ..

لنبدأ النقاش والمشاركة رقم 2 للأخ الحبيب محمود بك
كود جميل ورائع وأفكار ممتازة .. النتائج بها رقم خطأ وهو الرقم 016 حيث أن الشرط غير مطابق
ولكن المحاولة رائعة بحق والأروع هو شرح الكود ليستفيد منه الأعضاء




look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  06-08-2018 12:38 صباحاً   [11]
معلومات الكاتب ▼
تاريخ الإنضمام : 03-10-2017
رقم العضوية : 852
المشاركات : 1580
رصيد العضو : 0
الدولة : مصر
الجنس :
تاريخ الميلاد : 1-9-1995
الدعوات : 5
قوة السمعة : 10861
الاعجاب : 6
موقعي : زيارة موقعي
المشاركة الأصلية كتبت بواسطة: محمود ابو الدهب هههههه مصمم يا حبيب الملايين
اكمل المطلوب ثم ارسل
وانته مصمم ليه ان الامر بطلبه ليا نحن في حلقات تعليمية اى المفروض يدخل هنا من لا يعمل ومن يعلم اى يجب ان نراعي ان هناك من لا يعلم ويريد ان يتعلم
وشكرا على الشرح وبارك الله فيك

ولكن في كلا الكودين لم تحقق المطلوب ولم يعطي نتائج no_1 biggrin2
وعليكم السلام ورحمة الله وبركاته
"اوعى تكون بتزعل زى استاذ ياسر دائما احب الهزار في كلامى علشان ارفرش الجو والكمبيوتر كمان :) "
ههههههههههه حبيبى ياحوده ، عندك حق أنا اللى غلطان
أنا بس دايخ حبتين
لكن الكودين اكيد مجربهم قبل وضعهم وشغالين عادى




look/images/icons/i1.gif استخراج أرقام موبايل من ملف نصي (موضوع للبحث)
  06-08-2018 12:39 صباحاً   [12]
معلومات الكاتب ▼
تاريخ الإنضمام : 21-08-2017
رقم العضوية : 3
المشاركات : 10534
رصيد العضو : 3
الجنس :
تاريخ الميلاد : 1-10-1978
الدعوات : 24
قوة السمعة : 36769
الاعجاب : 191
الأخ العزيز سليم
بارك الله فيك وجزاك الله خيراً .. النتائج أيضاً أتت بـ 016
كما أن الأكواد كلها تعتمد على نسخ محتويات الملف النصي ، والمطلوب هو التعامل مع الملف النصي الذي اسمه Sample.txt والموجود في نفس مسار المصنف الحالي .. أي عملية الاستخراج والتعامل يكون مع الملف النصي بشكل مباشر
والمشاركة رقم 6 أتت بـ 3 أرقام فقط ومعهم نص في أول النتائج ..أعتقد يحتاج لبعض الضبط

في الحقيقة أنك أصبت حين قلت أنه من الأفضل استخدام الـ Regular Expressions وهو المقصود في الموضوع ... أن نتعلم شيئاً جديداً ... فلنبحث في الموضوع وندلي بدلونا .. لأن الموضوع يحتاج لبحث والأفضل أن يقوم بالبحث أكثر من شخص للوصول لمعلومات أكثر




اضافة رد جديد اضافة موضوع جديد
الصفحة 2 من 8 < 1 2 3 4 8 > الأخيرة




المواضيع المتشابهه
عنوان الموضوع الكاتب الردود الزوار آخر رد
استخراج أرقام موبايل من ملف نصي Eslam Abdullah
11 3384 hassona229

الكلمات الدلالية
استخراج ، أرقام ، موبايل ، (موضوع ، للبحث) ،









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

الساعة الآن 02:07 AM