يوسف عطا قام بنشر يناير 13, 2016 قام بنشر يناير 13, 2016 يوجد عمود يحتوى على أرقام و نص بهذا الشكل 01:00 MIN 08:00 MIN 1 SMS وهو يعبر عن عدد الدقائق و الرسائل و لن يكون به كسور دقائق هذا العمود لا أستطيع جمع إجمالى خلاياه المطلوب معادلة تجعل هذه الأرقام قابلة للجمع حتى لو حذفنا النص المجاور للرقم فتكون ال ثلاث خلايا السابقة تصبح 1.0 8.0 1 ولا يشترط وضع الكسور ويكفى الرقم الصحيح و الملف مرفق فودافون أحمد الرفاعى.rar
ياسر خليل أبو البراء قام بنشر يناير 13, 2016 قام بنشر يناير 13, 2016 أخي الكريم يوسف عطا كيف الحال يا رجل ؟ افتقدناك الفترة الماضية بالنسبة لطلبك يمكن وضع المعادلة التالية في الخلية G2 ثم سحبها إلى آخر النطاق =LEFT(F2,FIND(" ",F2)-1) وفي أول خلية فارغة بعد النطاق قم بوضع المعادلة التالية : =SUM(INT(G2:G167)+MOD(G2:G167,1)*5/3)/24 وهي معادلة صفيف أي يجب الضغط على Ctrl + Shift + Enter وإليك الملف المرفق توضيحاً لكيفية الوصول للحل تقبل تحياتي Vodafone.rar
يوسف عطا قام بنشر يناير 14, 2016 الكاتب قام بنشر يناير 14, 2016 الف شكر أخونا الغالى ياسر بك على الترحيب ولم يمنعنى عن المنتدى و كذلك منتديات أخرى سوى مشغوليات العمل ربنا يعيننا جميعاً عليها و أتمنى أن تكون أنت وجميع الأخوة الأفاضل بكل خير بخصوص المعادلات المذكورة جارى التجربة و أشكر لك إهتمامك وفقك الله بخصوص المعادلة الأولى يا أستاذنا ياسر بك تطلعلى رسالة تقول إن يوجد خطأ فى المعادلة علماً بأنى أعمل على أوفيس 2003 وربما تكون المعادلة صالحة للإصدارات الأعلى لكنى لا أعمل إلا على 2003 فهل يوجد حل ؟ أشكر لك إهتمامك
ياسر خليل أبو البراء قام بنشر يناير 14, 2016 قام بنشر يناير 14, 2016 أخي الكريم أبو يوسف أي المعادلات يحدث فيها الخطأ .. ؟ أعتقد أن المعادلات يجب ان تعمل على 2003 .. جرب تغير الفاصلة العادية لفاصلة منقوطة .. حيث أنني من مفضلي التعامل مع المعادلات بالفاصلة العادية وأقوم بتغيير إعدادات الويندوز لعمل ذلك .. تقبل تحياتي 2
قلم-الاكسل(عبدالعزيز) قام بنشر يناير 14, 2016 قام بنشر يناير 14, 2016 جواب المهندس ياسر فيه الكثير من الابداع والحكمة شكرا لك وباركك الله 2
يوسف عطا قام بنشر يناير 14, 2016 الكاتب قام بنشر يناير 14, 2016 بالفعل بعد تغيير الفاصلة بالفاصلة المنقوطة اصبحت المعادلة تعمل جيدا لكن ليس هذا ما اريده حيث تظل النتيجة بهذه الصيغة 1:00 و المطلوب ان تكون النتيجة رقم صحيح بدون ( 00:) حيث سيتم بعد ذلك ضرب الرقم فى رقم اخر ثم سيتم الجمع بعد ذلك ومرفق ملف اوضح مع خالص شكرى Vodafone1.rar
ياسر خليل أبو البراء قام بنشر يناير 15, 2016 قام بنشر يناير 15, 2016 أخي الكريم يوسف عطا جرب المعادلة بهذا الشكل علها تؤدي الغرض إن شاء الله =VALUE(LEFT(LEFT(F2,FIND(" ",F2)-1),2)) تقبل تحياتي 1
يوسف عطا قام بنشر يناير 25, 2016 الكاتب قام بنشر يناير 25, 2016 كفيت ووفيت يا أستاذنا الكبير ياسر بك المعادلة الأخيرة حلت أغلبية الأمور ولكن الخطأ عندى لعدم توضيح أمر صغير هو أن بالعمود المذكور يكون الرقم أحياناً بالكيلوبايت هكذا 560 KBs وهنا المعادلة تستخرج الرقم 56 و المفترض أنه يكون 1 لأنه أقل من 1 صحيح حيث أن القيمة هذه تعتبر حوالى نصف ميجابايت فهل يمكن التعامل مع الخلية التى تحتوى على حروف KBs كأنها رقم 1 تحت أى ظروف ؟ أم ماذا أفعل فى هذه الحالة ؟؟ ولا ضرر أن يكون ناتج المعادلة يحتوى على كسر عشرى حيث يمكن بالتنسيق بالخلية أن يتم تجاهل العلامة العشرية و كسرها
ياسر خليل أبو البراء قام بنشر يناير 25, 2016 قام بنشر يناير 25, 2016 أخي الكريم يوسف عطا .. لم أفهم النقطة الأخيرة هلا أرفقت مثال بشكل النتائج المتوقعة ليسهل فهم المطلوب .. 1
يوسف عطا قام بنشر فبراير 12, 2016 الكاتب قام بنشر فبراير 12, 2016 أخونا الغالى ياسر بك تحية طيبة تفضل مرفق به الشكل المطلوب بالطريقة اليدوية فى عمود و ناتج المعادلة فى عمود مجاور و عمود ثالث يوضح تطابق أو إختلاف الناتجين و الف شكر مقدماً يوسف فبراير2016.rar
سليم حاصبيا قام بنشر فبراير 21, 2016 قام بنشر فبراير 21, 2016 جرب هذا الكود Sub extract_time() Dim mycol As New Collection Dim mytext lr = Cells(Rows.Count, "F").End(3).Row For i = 2 To lr x = Application.WorksheetFunction.Trim(Range("f" & i).Value) On Error Resume Next For t = 1 To Len(x) y = Mid(x, t, 1) If IsNumeric(y) Or Asc(y) = 46 Or Asc(y) = 58 Then mycol.Add y mytext = mytext & y End If Next Cells(i, 7) = mytext * 1 mytext = "" Next End Sub
يوسف عطا قام بنشر فبراير 22, 2016 الكاتب قام بنشر فبراير 22, 2016 أشكرك سليم بك وجارى التجربة تقبل تحياتى
يوسف عطا قام بنشر فبراير 22, 2016 الكاتب قام بنشر فبراير 22, 2016 الأخ المحترم سليم بك تحية من القلب أما بعد الكود الذى تفضلت به سيادتكم أدى جزء من المطلوب تمام التمام اللى هو ما يحتوى على أرقام بالميجابايت حيث أصبحت نتيجة الكود مضبوطة تماماً بعكس نتيجة المعادلة ولكن نفس الخطأ كما هو بخصوص قيم الكيلو بايت حيث لم يتدارك خطأ المعادلة و أصبح ناتج الكود و ناتج المعادلة متماثلان وكلاهما مختلفان عن المطلوب كما أن الكود لم يعط أى نتيجة فى حالة وجود أعداد الدقائق فترك الخلايا فارغة ومرفق جزء من النتائج و العمود الأخير يوضح التطابق أو الإختلاف بين ناتج الكود و الناتج اليدوى المقدار المفترض يدوياً ناتج المعادلة الإختلاف ناتج الكود الإختلاف 2.01 MBs 2.01 2 مختلف 2.01 مطابق 2.74 MBs 2.74 2 مختلف 2.74 مطابق 2.24 MBs 2.24 2 مختلف 2.24 مطابق 123.83 MBs 123.83 12 مختلف 123.83 مطابق 02:00 MIN 2 2 مطابق مختلف 10.38 MBs 10.38 10 مختلف 10.38 مطابق 10 KBs 0.01 10 مختلف 10 مختلف 60 KBs 0.06 60 مختلف 60 مختلف 10.2 MBs 10.2 10 مختلف 10.2 مطابق 120 KBs 0.12 12 مختلف 120 مختلف 05:00 MIN 5 5 مطابق مختلف 02:00 MIN 2 2 مطابق مختلف 02:00 MIN 2 2 مطابق مختلف 01:00 MIN 1 1 مطابق مختلف 1.97 MBs 1.97 1 مختلف 1.97 مطابق 2.19 MBs 2.19 2 مختلف 2.19 مطابق 3.23 MBs 3.23 3 مختلف 3.23 مطابق 02:00 MIN 2 2 مطابق مختلف 2.9 MBs 2.9 2 مختلف 2.9 مطابق 2.76 MBs 2.76 2 مختلف 2.76 مطابق 1.4 MBs 1.4 1 مختلف 1.4 مطابق 02:00 MIN 2 2 مطابق مختلف 01:00 MIN 1 1 مطابق مختلف 2.79 MBs 2.79 2 مختلف 2.79 مطابق 13.43 MBs 13.43 13 مختلف 13.43 مطابق 10 KBs 0.01 10 مختلف 10 مختلف 30 KBs 0.03 30 مختلف 30 مختلف
ياسر خليل أبو البراء قام بنشر فبراير 23, 2016 قام بنشر فبراير 23, 2016 أخي الكريم يوسف عطا جرب الكود التالي ..ستظهر النتائج في العمود O ..يمكنك التعديل في الكود لتضع النتائج في العمود المناسب لك Sub Split() Dim Arr, I As Long, StrA As String, StrB As String Arr = Range("F2", Cells(Rows.Count, "F").End(xlUp)).Value For I = LBound(Arr) To UBound(Arr) StrA = VBA.Split(Arr(I, 1), " ")(0) StrB = VBA.Split(Arr(I, 1), " ")(1) If StrB = "MIN" And Val(StrA) = "0" Then Cells(I + 1, "O") = 0.01 ElseIf StrB = "MIN" Then Cells(I + 1, "O") = Val(StrA) ElseIf StrB = "KBs" Then Cells(I + 1, "O") = Val(StrA) / 1000 Else Cells(I + 1, "O") = StrA End If Next I End Sub أرجو أن يفي بالغرض .. ملحوظة : تم التعامل مع الأصفار 00:00 بجانب كلمة MIN على أنها 0.01 كما أدرجت في النتائج المرفقة رغم أنه غير منطقي .. تقبل تحياتي 1
يوسف عطا قام بنشر فبراير 24, 2016 الكاتب قام بنشر فبراير 24, 2016 الف شكر ياسر بك جارى التجربة شاكر إهتمامك الله ينور عليك ياسر بك الكود إستخرج النتائج بدقة 99.9% الإختلاف فقط جاء فى رقم 23.7 ولكن الكود إستخرجه 23.07 و الإختلاف لا يسبب مشكلة كبيرة الحمدلله الف الف شكر للأخوة المحترمين جزاكم الله خير وجعل أعمالكم فى موازين حسناتكم
ياسر خليل أبو البراء قام بنشر فبراير 24, 2016 قام بنشر فبراير 24, 2016 أخي الكريم يوسف عطا لاحظت فعلاً أن النتائج مختلفة في 23.7 ... والكود استخرج الرقم 23.07 كما هو موجود في المدة بالضبط ... ولو كانت القيمة 23.7 هي الصحيحة فعلى أي أساس يتم احتسابها بهذا الشكل وهو موجودة في المدة 23.07 .... كما أشرت إلى نقطة أخرى في مشاركتي السابقة وهي غير منطقية بالنسبة لي ولكن قمت بها ليتناسب مع ملفك .. وهو المدة 00:00 .. في حسابك اليدوي جعلتها 0.01 الحمد لله أن تم المطلوب على خير ..وجزيت خيراً بمثل ما دعوت لي تقبل تحياتي 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.