نجوم المشاركات
Popular Content
Showing content with the highest reputation on 09/07/16 in all areas
-
أعزائى الأفاضل رواد المنتدى الكرام ... السلام عليكم ورحمة الله وبركاته قام الأستاذ الفاضل معلمى المبدع دائما / ياسر خليل ابو البراء ـ بوضع كود لتقسيم قائمة واحدة إلى قائمتين بالتساوى وتم نشرها على صفحة الفيس بوك .. وهذا عمل رائع جزاه الله خيرا وزاده من علمه النافع وقد قمت بإجراء نفس المطلوب ولكن باستخدام المعادلات .... فارجو التفضل منكم وتقييم هذا العمل المتواضع والمرفق هنا هو ملف مضغوط يحتوى على ملفين الأول : ملف الأستاذ المبدع / ياسر خليل أبو البراء ـــ الحل بالأكواد الثانى : الملف الذى قمت بالتعديل عليه ــ الحل بالمعادلات تقسيم قائمة غلى قائمتين بالتساوى.rar4 points
-
يعلم الله انى احبك فى الله اخى ياسر وانا لم اقصد الاهانة منك ابدأ كما وضحت لك فى الموضوع ياريت تقبل اسفى وانا والله لم اقصد الاهانة4 points
-
نرحب بالأخ سليم حاصبيا فى فريق الموقع ونسأل الله أن يعينك على مهام الاشراف أهلا وسهلا3 points
-
الاخوة الاعزاء في المنتدى الموقر محمد طاهر ياسر خليل أبو البراء زيزو العجوز ابو يحيى1 احمد بن ابراهيم عمر الحسيني جلال الجمال_ابو ادهم ابو عبدالبارى حسين22 قلم-الاكسل(عبدالعزيز) احمد21 الخ.... (و كل من يظهره التحقيق) الف شكر على التهنئة وان شاء الله سوية الى أبعد من الواجب3 points
-
أستاذي الكبير محمد طاهر لكم سعدت بهذا الموضوع كثيراً فالأخ سليم حاصبيا شعلة تشاط متقدة ودائم التواجد بالمنتدى بارك الله فيه .. ألف ألف مبارك أخي الحبيب سليم الترقية المستحقة عن جدارة ، ومن تقدم لتقدم .. تقبلوا وافر تقديري واحترامي3 points
-
تم رفع هذا الكود فى مشاركة منفصله حتى لا ننسى هذه المشاركة كود نقل الاسماء بدون تكرار تم ارفاق كود الحل من الفاضل أ / رحمة الله _ عماد الحسامى _ طارق محمود _ يحيى حسين و لا تنسونا من صالح الدعاء تحياتى اظهار الاسماء بدون تكرار11 (hossai).rar اظهار الاسماء بدون تكرار_hossai.rar اظهار الاسماء بدون تكرار2 (tarek).rar اظهار الاسماء بدون تكرار بعد الكتابة مباشرة - الاستاذ يحيى حسين (1).rar3 points
-
أين العريس ؟ غاب عنا في فرحة عرسه .. أهذا يجوز؟ إلى الأمام أخي الغالي سليم2 points
-
الف مبروك للمنتدى واعضاء المنتدى اختيار موفق جدا الف مبروك استاذنا الكبير سليم2 points
-
فقط اريد أن ادلي بملاحظتين مهمتين 1 - كل ما كان الملف يحتوي على شرح مفصل للمطلوب و نموذ واضح للحل المراد الوصول اليه كلما اسرع الاخوة في الرد بدون تردد 2 - كلنا نتعلم و ربما المجيب عن السؤال يستفيد اكثر من السائل عنه لانه في هذه الحالة قد ارتقى بخطوة للامام و تعلم شيئا ربما لم يسبق له ان خاض فيه هل يستطيع أحدنا ان يختبر نفسه بطرح اسئلة على نفسه ثم يجيب عنها ؟ قطعا لا و لذلك دوما نتشوق الى الاسئلة التي تكون معالمها واضحة لنجيب و نفيد و نستفيد2 points
-
أخي الكريم أحمد أحبك الله الذي أحببتني فيه .. لا داعي للاعتذار فكلنا هنا أخوة في الله ويجمعنا الحب في الله ولا شيء سوى ذلك .. تقبل تحياتي .. وسأقوم بحذف الموضوع بعد قليل ... سأتركه فقط لحين ترى دري وأتأكد أنك رأيت الرد .. حيث لا داعي لذلك .. أحب فقط أن أوضح الأمور وأحب أن يكون هناك مجال للمناقشة2 points
-
جزاكم الله خيرا أخي ياسر و اخي جلال المرفق به إمكانية البحث بأكثر من معيار على السريع و ربما يحتوي على بعض الأخطاء 3333.rar2 points
-
2 points
-
انا حشارك فقط بوجود الخطأ في اول مشاركة وفي السطر rs.FindFirst "[UserName]= ' " & Me.txtUserName & " ' And [Department]= ' " & Me.Me.cboDepartment & " ' " تلاحظ تكرار me اخ بو عبدالله2 points
-
2 points
-
مشاركة مع اخوتي واحبتي الكرام تفضل .. وغير ما يلزم .. حسب المسميات عندك Dim rs As Recordset Private Sub cmdOK_Click() Set db = CurrentDb Set rs = db.OpenRecordset("tblUsers", dbOpenDynaset) rs.FindFirst "UserName = '" & UserName & "' and password ='" & Password & "'" If rs.NoMatch Then MsgBox "هذا المستخدم غير مسجل" Exit Sub Else DoCmd.OpenForm "frm_main" DoCmd.Close acForm, Me.Name End If End Sub2 points
-
Dim rs As Recordset Dim Criteria As String Set rs = CurrentDb.OpenRecordset("tblUser", dbOpenSnapshot, dbReadOnly) Criteria = "[UserName]='" & [txtUserName] & "' And [Department]='" & [cboDepartment] & "'" rs.FindFirst Criteria If rs.NoMatch = True Then MsgBox "يرجى الـتأكد من إسم المستخدم", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, "رسالة تنبيه" Me.txtUserName.SetFocus Exit Sub End If If rs!Password <> Me.txtPassword Then MsgBox "يرجى الـتأكد من كلمة السر", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, "رسالة تنبيه" Me.txtPassword.SetFocus Exit Sub End If هل تسمحون لى بالمشاركة معكم شرطين فى دالة البحث rs.FindFirst2 points
-
2 points
-
تحياتى و ايام مباركه مرفق كود مرن و هام يقوم باستدعاء الفورم بدبل كليك يمكن الاستفاده منه فى اى برنامج او ملف ( و هو منقول من ضمن مشاركات المنتدى ) فمثلا لو عندك فورم بحث و اضافة مطلوب استدعائه فى نطاق معين لادخال و تكويد بيان معين بدلا من استخدام القائمه المنسدله فضع هذا الكود البسيط فى حدث الصفحه المطلوبه Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Range("a1 : a1", "b2 : b2230")) Is Nothing Then Cancel = True UserForm1.Show End If End Sub فعند الضغط / الكابس دبل كليك على الخانه A1 او النطاق B2:B2230 يتم استدعاء فورم او ليست اسمه userform1 تحياتى و لا تنسونا من صالح الدعاء G_Double click.rar1 point
-
السلام عليكم ورحمة الله وبركاتة هذا البرنامج كان احد الاعضاء قد وجده في احد المنتديات الاجنبية وهو لقاعدة بيانات وتم التعديل والاضافة والتنقيح وكانت النتيجة الاتي :: عناوين السجلات في اليوزر فورم تعمل اتوموتيكيا عند تغيرها في الشيت اضافة صورة لكل سجل و يتم اضافة الصور الي الفلدر All_Pic بالأسم الاول للسجل اضافة سجل جديد تعديل السجل الحالي حذف السجل الحالي البحث في الاعمدة التي تم تعليم التشك بوكس لها في هيدر العناوين وتظهر هذه العناوين فقط في كومبو بوكس البحث يشمل الملف علي ثلاث صفحات الصفحة الاولي لقاعدة البيانات الصفحة الثانية لقاعدة البيانات اخري مصغرة لتوضيح الية عناوين اليوزر فورم الصفحة الثالثة تقرير بالسجلات التي تم اختيارها اصل الملف قبل التعديل New Userform Example_1.rar الملف بعد التعديل قاعدة بيانات بالصور_2.rar1 point
-
أخي الكريم عزيز إليك الرابط التالي فيه شرح مفصل لما ستقوم بعمله للحصول على المطلوب .. لاحظ فقط في الكود المقدم لك في الموضوع ستقوم بتغيير اسم ورقة العمل من Sheet1 إلى Sheet2 .. حيث أن ورقة العمل لديك في الملف المرفق باسم Sheet2 الموضوع بالكامل مع ملف مرفق مع شرح لما يتم في الكود بشكل عام في هذا الرابط تقبل تحياتي1 point
-
شغلة بسيطة تبديل اول حرفين.rar او ربما هذه المعادلة هي الانسب =IF($A1="","",MID($A1,2,LEN($A1)-1)&MID($A1,1,1))1 point
-
وعليكم السلام جرب ابا جودي واكتب عناوين الاعمدة كاملة في خصائص الاستعلام وافصل بين كل عنوان والآخر بفاصلة منقوطة افتح الاستعلام على التصميم / بزر الفارة الايمن اختر خصائص / ستجد القيمة : عناوين الاعمدة اكتب عناوين الاعمدة كلها ( اقصد بالعناوين التي تظهر عند فتح الاستعلام على عرض البيانات وليس التصميم ) الآن عند فتح التقرير سيفتح بلا مشاكل ( ومسميات الحقول ثابتة ) وستبقى قيمة الحقل المحذوف فارغة1 point
-
1 point
-
1 point
-
الرابط لم يفتح معي ولاكن الكود الاول قام بالعمل المطلوب و حسن ضنك في الصياغة و الاتقان. يعجز الوصف في ما يجول في نفسي احتراما لكم و للقائمين على المنتدى في سرعة محبتكم لخدمة اخوانكم كتب الله اجركم و نفع الله بعلمكم ودمتم بالصحة و العافية1 point
-
الأخ سليم حاصبيا الف مبروك للترقية جائت فى وقتها انت اضافة كبيرة لهذا الصرح الكبير وفقك الله وسدد خطاك1 point
-
تحياتى و ايام مباركه الف مبروك اخى الفاضل سليم حاصيبا و اختيار موفق و اضافة كبيره للمنتدى1 point
-
مبروووك استاذ سليم اهل الخير يستاهلون الخير نفع الله بعلمك واعانك الله على كل من يحبونك1 point
-
أخي الكريم أحمد جربت الملف المرفق وكلا الكودين يعملان بشكل صحيح وتتم الحماية لجميع الأوراق بلا استثناء وعند فك الحماية يتم فك الحماية لجميع أوراق العمل بلا استثناء .. حاول توضح المشكلة بالصور ، وهل يحدث معك خطأ من نوع معين كرسالة خطأ أو ما شابه؟ قرأت المشاركة مرة أخرى ولربما يكون هذا ما تقصده Sub protectclose() Dim a As Worksheet For Each a In Worksheets If a.Name <> "ورقة1" And a.Name <> "ورقة2" And a.Name <> "ورقة3" Then If a.ProtectScenarios = False Then a.Protect "1111" End If End If Next a End Sub هذا كود الحماية لجميع الأوراق ما عدا أوراق العمل المحددة في سطر في الكود وهي ورقة1 ، ورقة2 ، ورقة31 point
-
1 point
-
استاذنا العبقرى ياسر ابو البراء جزاك الله خيرا وزادك ذكاءاً على علم وشكراً على النصيحة ولكنك تعلم أن للضرورة أحكام1 point
-
فين السلام عليكم يا حاج أحمد اتفضل الملف المرفق عشان متدورش كتير لأن طلبك بسيط جداً ومش محتاج أكواد ولا تفاصيل .. عملت عمود للسعر ووضعت لك المعادلة التي تحسب الإجمالي وبس خلاص لعمل حسابات بعدد الكميات.rar1 point
-
1 point
-
وجزيت خيراً أخي الكريم جلال الجمال مساهمةً مني في الموضوع قمت بالعمل على المرفق الأول للأخ الراحل رحمه الله الحسامي ووجدته بالحلقات التكرارية المتداخلة في حين يمكن إنجاز المطلوب بشكل أسرع من خلال الكود التالي رابط الكود من هنا1 point
-
جزاكم الله خيراً أخي العزيز جلال الجمال تقبل وافر تقديري واحترامي1 point
-
أخي الكريم أحمد ديدو بارك الله فيك واعلم أنني مثلي مثل غيري مجرد متعلم مجتهد ولست بعلامة كما يعتقد البعض ، وأنا أتعلم الجديد كل يوم وما زلت أتعلم وصدقني مرحلة التعلم لمن يعرف هي مرحلة غير منتهية على الإطلاق لابد أن تتحلى بالصبر .. لقد مكثت بالأمس في كتابة كود واستغرق مني أكثر من 10 ساعات (في المحاولات المستميتة للوصول لحل) .. هكذا يجب أن تتعلم إذا كنت تريد أن تتعلم في هذا المجال ، ولكل مجتهد نصيب .. أحب في ردودي دائماً أن أفصل الأمور وأوضحها تمام التوضيح ، وذلك ليستفيد الجميع ونرتقي ..كفانا الوقوف عند البدايات (الكثير يبدأ ولا يكمل المسيرة) إذ أن التعلم يحتاج إلى مثابرة وصبر وإرادة ومحاولات مستمرة حتى لو باءت تلك المحاولات بالفشل آلاف المرات أعتذر في الإسهاب في حديثى .. عندما قدمت لك رد توقعت أنك لا تعرف كيفية التعامل مع محرر الأكواد فأرشدتك إلى موضوع هااااااام جداً والكل يعلم بأهميته إذ لابدمن معرفة الأمور الأساسية للتعامل مع محرر الأكواد ومع الحلول التي تقدم لك في الموضوع قام أخونا الحبيب أبو حنين بوضع كود منذ قليل .. قم بنسخ الكود واذهب لمحرر الأكواد وأدرج موديول جديد وضع الكود به ، ثم ارجع لورقة العمل واضغط Alt + F8 ليظهر لك قائمة بأسماء الإجراءات الفرعية لديك .. ابحث عن اسم الإجراء الفرعي (الذي يأتي بعد كلمة Sub) .. ابحث عن الاسم ثم انقر Run .... أو كما تعلمت قم برسم زر ليرتبط تنفيذ الكود بالنقر عليه ...(أمور قد تعرفها وأوضحها لمن لا يعرفها) .. وكل ذلك من أجل نرتقي ونسمو ونصل لدرجة الاحتراف سوياً وللعلم أنا لا أحب أن أرفق ملف وحسب ، فهذا أيسر وأسهل وأقل في الوقت والجهد ، ولكنه لن يفيد الكثيرين ... لابد من أن يتعلم الجميع تطبيق الحلول بأنفسهم أنا أقدم الكود والخطوات اللازمة لتنفيذه إذا لزم الأمر ، وأوضح كافة الجوانب المرتبطة وأحياناً كثيرة أقدم شرح تفصيلي للكود ************************* بالنسبة للكود الذي قدمته إليك شرح سريع له لكي تعرف ماذا يفعل الكود بالضبط .. وليس مجرد Done فقط (وللعلم أنا أحب استخدام سطر يظهر رسالة للمستخدم ليعرف المستخدم أن الكود قد انتهى من تنفيذ السطور الموجودة فيه .. فهذا أمر مألوف بالنسبة لي وليست مجرد رسالة إنما لها غرض وهدف .. كما أوضحت ) ** نأتي للكود : قمت بتعيين ورقة عمل وأسندته لمتغير اسمه Ws وعينت قيمة له ليحمل اسم ورقة العمل الرئيسية التي تحتوي على البيانات وهي ورقة عمل "اليومية" ** ومتغير آخر باسم Lr لمعرفة رقم آخر صف يحتوي على بيانات ووجدت أن العمود الأول يحتوي على تواريخ كثيرة جداً وليس هناك بيانات مقابلة فخمنت على عمود آخر وهو العمود رقم 9 أي العمود I لمعرفة رقم آخر صف من خلاله (من هنا يمكنك إذا فهمت تلك النقطة أن تغير الرقم 9 إلى رقم العمود المطلوب التعامل معه لمعرفة آخر صف فإذا كنت تنوي معرفة رقم آخر صف من خلال العمود الأول فقم بتغيير الرقم 9 إلى 1 والذي يمثل العمود الأول ، وذلك التعديل يكون في السطر الذي يقوم بتعيين قيمة للمتغير Lr ** وضعت شرط بأن تكون الخلية B1 في ورقة اليومية لا تساوي فراغ (أي ليست فارغة) ، وشرط آخر أن تكون تاريخ .. وإلا فلن ينفذ الكود وسيتم الخروج من الإجراء بدون تنفيذ بقية الأسطر ... ** ثم وضعت قيمة للمتغير X بحيث يساوي رقم الشهر في الخلية مضافاً إليه 2 للوصول لورقة العمل المناسبة ، فإذا كان الشهر سبتمبر فإن قيمة المتغير X تساوي 9 + 2 أي تساوي رقم 11 (وذلك للوصول للورقة التي سيتم الترحيل إليها .. وستكون في هذه الحالة هي الورقة رقم 11 ألا وهي ورقة سبتمبر) ** مسح النطاق الذي ستوضع فيه البيانات في ورقة العمل الهدف (ورقة سبتمبر على سبيل المثال) ** ثم سطر النسخ للبيانات من ورقة اليومية إلى ورقة العمل الهدف ، وأخيراً مسح البيانات من ورقة اليومية .. إذاً كل ما عليك أن تقوم بوضع تاريخ في الخلية B1 ليتم تنفيذ الكود ثم تنفذ الكود وترى ورقة العمل الهدف (ويستحب أن تنظر لورقة العمل الهدف قبل تنفيذ الكود وبعد تنفيذ الكود لتعرف ما إذا كان الكود يقوم بعمله أم أنه يعطي رسالة Done فقط )) والسلام عليكم ورحمة الله وبركاته1 point
-
بسم الله الرحمن الرحيم هى صحيح من المشاركات القليلة ليا فى المنتدى كصاحب مشروع وان كنت من المهتمين فقط بالرد على استفسارات الاخوة الاعضاء لكن النهاردة انا حبيت اضيف حاجة يمكن حد يفتكرنى بيها فى المنتدى بالخير او بدعوة لاخيكم بظهر الغيب لعلها تصيب هو برنامج لادارة المستودعات والمخازن الصغيرة برنامج بسيط وقوى وتم تدارك نقاط مهمة كانت برامج تانية بتغفلها او بتتجاهلها زى معالجة مرتدات المبيعات للمخازن او المستبعد من المخزون كهالك او تالف او بانتهاء الصلاحية اولا اسم المستخدم وكلمة المرور موضحة فى الجدول المرفق ( 10 مستخدمين مختلفين فى كلمة المرور علشان باذن الله الاصدار التانى فيه صلاحيات مستخدمين ) بالغ الخطورة * ( باحاول اتكلم بلغة استاذنا ياسر خليل ابو البراء ) لازم تاخد بالك من البيانات الاساسية اللى هاتدخلها لاول مرة وهى 1- اسماء المنتجات الموجودة فى المخزن 2- بعد ما تكود المنتجات هاتدخل تحط لها ارصدة بداية المدة 3- علشان تقدر توصل للاكواد الجديدة للمنتجات هاتدخل على الصفحة بتاعت الجرد وتطبع تقرير الجرد هايطلع التقرير فيه كود المنتج واسمه و رصيده فى لحظة الطباعة اخيرا احب اضيف نقطتين مهمين جدا اولا البرنامج مجهز لانه يعمل على مخزن شغال فى 500 صنف ثانيا البرنامج فى اعتقادى الشخصى جيد لادارة المستودعات الصغيرة ( القرد فى عين **** غزال طبعا ) ثالثا - انا عارف انى قولت نقطتين بس معلش استحملونى - لا تبخلوا على اخيكم بالدعوة بظهر الغيب النسخة الاساسية.rar1 point
-
الاستاذ القدير ياسر خليل تقبل تحياتى نعم عندك حق فيما ذكرت ولكن عيبى انى بحب اظبط منطق التكويد حتى لو مش ليه لازمة يعنى انا بعامل الVBA بالبلدى كدة وقولتله لو التكست بوكس مش فاضي نفذ اللى جاى ولو فاضى امسح الليست وحطيت الحلقة التكرارية برضو لنفس الغرض مع انى عملت كدة فى اول الكود بس ده عيب فيا بصراحة بحب انفذ كل احتمالات منطق تنفيذ الكود مع انى تجاهلت انه يطلع عدد النتائج وتجاهلت حاله ان لم يوجد نتائج وتجاهلت المسج بوكس التى تفيد باتمام الترحيل وكان هذا للعجلة ولكنك محق فيما قلت تقبل تحياتى وتأكد ان ما فعلته بفضل الله ثم ما تعلمته من هذا المنتدى الرائع والاساتذه الافاضل به ومازلت اتعلم وقد بدات من الصفر وعشقت هذا ال VBA والان1 point
-
أخي الكريم أبو علي وسدرة جزاكم الله خير الجزاء على هذا البرنامج وعلى إفادة إخوانك لست خبيراً في هذا المجال لأجرب وأحكم على البرنامج ولكن أثق في أنه رائع إن شاء الله جعل الله أعمالك في ميزان حسناتك يوم القيامة تقبل تحياتي1 point
-
1 point
-
أخي الكريم أبو يحيى حاول أن تبتعد عن استخدام الخلايا المدمجة فهي عدوة المعادلات والأكواد .. والتعامل معها يشكل صعوبة بالغة .. عموماً جرب المعادلة التالية بفرض أن عدد الخلايا 4 خلايا مدمجة .. =INDIRECT("C"&IF(MOD(ROWS($A$1:A1),2)=0,(ROWS($A$1:A1)*4)-2,(4*ROWS($A$1:A1))-2)) لنحصل على النتائج لأول خلية بها بيانات وهي الخلية C2 لاحظ في المعادلة الرقم 4 يشير إلى عدد الخلايا المدمجة .. والرقم 4 موجود مرتين بما أننا نريد الحصول على المطلوب في الخلية C2 أي الصف الثاتي فقمنا بطرح 4 - 2 مرتين ... أي -2 موجودة مرتين (لاحظ الجزء الأخير) ********* ماذا لو كانت عدد الخلايا المدمجة 3 خلايا .. استبدل الرقم 4 في المعادلة بالرقم 3 ، والرقم -2 بالرقم -1 لاحظ أنه سيتم عمل تغيران لكل رقم (الرقم 4 مرتين ، والرقم -2 مرتين) **************1 point
-
السلام عليكم ورحمة الله تعالى وبركاته مشكورييييييييييييييييين جزيل الشكر على الاهتمام أخونا الغالي والحبيب أنا جودي آآآآآآآآآآآآآآآآسف على إتعابك معنا الكود يشتغل تمام بارك الله فيك لكن أنا أيضا أريد أن أتعلم الطريقة مع Findfirst وعندما أجربها بشرط واحد تعمل بشكل جيد Dim rs As Recordset Set rs = CurrentDb.OpenRecordset("tblUser", dbOpenSnapshot, dbReadOnly) rs.FindFirst "Department= '" & Me.cboDepartment & "'" If rs!UserName <> Me.txtUserName Then MsgBox "íÑÌì ÇáÜÊÃßÏ ãä ÅÓã ÇáãÓÊÎÏã", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, "ÑÓÇáÉ ÊäÈå" Me.txtUserName.SetFocus Exit Sub End If If rs!Password <> Me.txtPassword Then MsgBox "íÑÌì ÇáÜÊÃßÏ ãä ßáãÉ ÇáÓÑ", vbExclamation + vbMsgBoxRight + vbMsgBoxRtlReading, "ÑÓÇáÉ ÊäÈå" Me.txtPassword.SetFocus Exit Sub End If لكن عندما أضيف الشرط الثاني تبدأ المشاكل في الظهور آآآآآآآآآآآآآآآآآآآآآآسف على الإزعاج مجدد1 point
-
مصادر الجهاز غير كافية ؟؟!! احتمالات كثيرة بهذا الصدد لا يمكن التخمين بها ولكن أضع لك بعض الاحتمالات أخي الكريم أبا سلمان قد تكون امكانيات الجهاز بالفعل ضعيفة .. فما هي إمكانيات الجهاز لديك؟ احتمال أن يكون هناك مشكلة بالهارد كأن يكون مصاب بالباد سيكتور أي القطاعات التالفة احتمال آخر أن يكون جهازك مصاب بفيروس يشغل تطبيقات في الخلفية مما يستهلك من الذاكرة والبروسيسور بشكل كبير احتمال آخر وجود خلل في نظام التشغيل الذي يعمل على الجهاز .. >> إذا كانت إمكانيات الجهاز جيدة وأنت متأكد من ذلك وأن الهارد سليم ، أنضحك بتغيير نسخة الويندوز وأن تقوم فور تحميل الويندوز يتحميل أنتي فيروس 360 إنترنت سيكورتي فهو خفيف على الأجهزة وفعال بشكل كبير أما بخصوص ملف الإكسيل نفسه فيجب مراجعة المصنف بشكل جيد .. لابد من إعادة هيكلته إذا تطلب الأمر فقد يكون المصنف في حالة يرثى لها ، ويحتاج لصيانة حتى لا تتعرض لنفس مشكلة أخونا أسامة عطا الله ..إذ أنه كيف لملف أن يصل حجمه لـ 300 ميجا (في وجهة نظري إذا تعدى ملف الإكسيل 5 ميجا فهذا حجم كبير جداً ، وكم قمت ببناء برامج ضخمة جداً ولا يتعدى حجمها 3 ميجا) نصيحتي في بناء أي برنامج ألا تكثر من التنسيق الشرطي والتلوين بدون داعي ، حيث أنني أرى أناس قد جعلوا من الإكسيل مرسم ولوخة فنية هائلة ، أنا لست ضد الشكل ولكن كما يقول المثل : الشياكة في البساطة ..لأن التنسيقات الكثيرة جداً تؤثر على حجم الملف البعض يقوم بتنسيق ورقة العمل بالكامل (وكم رأيت من يقوم بوضع حدود لورقة العمل بالكامل .. ولما الإسراف في التنسيق .. حاول أن تنسق الجزء الذي يحتوي البيانات فقط وكما أخبرت عدم الإسراف في التنسيقات الغير ضرورية نصيحة أخرى حاول قدر الإمكان عدم الإكثار على المعادلات وخصوصاً وخصوصاُ معادلات الصفيف فهي بالتأكيد تثقل الملف وتجعل التعامل مع الملف مع كبر حجمه أمر مرعب حاول أن تحول عملك للأكواد فالأكواد تتميز أنه يمكنك حذف أوراق عمل بالكامل وإنشاء أوراق عمل منسقة وبها كل ما تريده من مخرجات وبعد تنفيذ الكود والحصول على المطلوب أن تقوم بحذف تلك الأوراق فيظل المصنف خفيف الحجم وسهل ويسير في التعامل .. ويمكن بالأكواد أن تقوم بتصدير المخرجات والتقارير لمصنفات جديدة بعيداً عن المصنف الأصلي ، فتحافظ عليه بشكل كبير ..هذا بخلاف السرعة في الأداء والدقة في المخرجات أعتذر إن كنت قد أطلت عليكم ...1 point
-
ابشر بالخير ان شاء الله فى حال اولا انا فكرت نفس تفكير الاستاذ محمد ايمن ولما حاولت التعديل فى مشاكل فى الاكواد بتاعة حضرتك وحصل دمج لكن انا كريت فورم جديد خالص وكودت كل شئ من الاول للاخر وكل شئ تمام لكن الموضوع اختلف كليا وجزئيا فى اكواد الفورم login شوف الفرق وحضرتك هتعرف باقى شئ واحد ما عرفت اعمله وما ظبط معايا بصراحة عرض الباسورد او ممكن الطريقة دى مش شغالة مع اصدار الاكسس بتاعى جرب وفى انتظار رد حضرتك findfirst_up .rar1 point
-
كل عام و انتم بخير أولاً أقدر مشاركاتكم و حرصكم على التواصل مع الأخوة الأفاضل الذين غابو عن المنتدى، و الحقيقة انى لم احسن هذا الأمر منذ زمن طويل ، فحقيقة الامر ان تواصلى المباشر يتسم بالاقلال ، و مؤخرا أصبح ضعيف جدا مع الجميع الا قليل ممن اتيح لي اللقاء بهم على ارض الواقع. و فى الفترة الاخيرة اقتصر جزء كبير من الوقت الذي اخصصه للمنتدى على امور تتعلق بصيانة و تعديلات الموقع و التحديثات و حل المشاكل التي يوجهها بعض الأخوة فى امور تخص التسجيل و المشاركة و الصلاحيات و التي اصبحت تستنزف وقت ملحوظ مع زيادة عدد الاعضاء، و فى مقابل ذلك و قلت مشاركتي و تفاعلي الفعلي فى المواضيع و متابعة الأخوة و اعتمد فى ذلك على الأخوة الأفاضل فى فريق الموقع. و هذا ليس بالوضع المثالي و لكن لم استطع مؤخرا غير ذلك. من ناحية أخرى الجميع لهم ظروفهم الخاصة و تقدير اولوياتهم امر يعود لهم و غيابهم فى تقديري يكون بالتأكيد له أسبابه . و كما اتفقنا فى الية ترقيات الاعضاء ، فعودة من غاب للمشاركة نفرح بها جميعا ، و أيضا عودة من غاب من فريق الموقع للمشاركة فى الفريق الاداري ايضا دائما مرحب به ، و حدثت يالفعل عدة مرات خلال السنوات الماضية. لدى قناعة بان الموقع هنا يختلف عن الكثير من مواقع المنتديات الاخرى ، و تقديري للأخوة الفاعلين و اعمدة الموقع الذين ذكرتم و ايضا الكثيرين ممن لم يذكروا فى هذا الموضوع يجعلهم فى وجهة نظرى ارقى بكثير من ان تحفزهم مشاركة او تواصل او طلب للتواجد أو العودة اذا غابوا أو أن يثنيهم قلة التفاعل او التقصير فى التقدير عن المشاركة و افادة الاخرين. و انما يحفزهم بصورة اساسية نشر العلم و الرغبة فى ثواب افادة الاخرين. و أنا استعرض ما كتبت هنا فى هذا الموضوع ، و أفكر فيما سأكتب فى السطور التالية ، انتبهت الى ان اهتمامي بوجود نظام و الية عمل بالموقع و تطبيقها ربما يكون جعلني تعاملت مع غياب بعض الأخوة فى فريق الموقع سابقا بطريقة الية ( وفق النظام المتفق عليه بحذافيره ) أي أننى لم اتواصل بطريقة كافية مع من غاب عنا دون عذر معلوم ، و لعلى أرجع ذلك لحرصى على وجود نظام و تطبيفه لما اراه من فائدة لذلك على المدى الطويل، و لكن ربما تحتاج هذه الالية المعلنة الى تحديث يضيف اليها محسنات فى مجال التواصل، و سابحث ذلك باذن الله تعالى .كما اود ان انوه الى ان عملية التفاعل و التواصل مطلوبة من الجميع و ليس من إدارة و فريق الموقع فقط . و جزاكم الله خيرا على التنبيه.1 point
-
السلام عليكم جزاك الله اخي رمهان هذا هو الحل وشكرا جزيلا لك و أدامك الله ذخرا للمنتدى1 point
-
الأستاذ الفاضل العبقرى سليم حاصبيا عذرا لعدم اتمام الحل الساعة كانت متأخرة وكنت بنام على نفسى جرب المرفق التالى ستجد فيه غايتك انشاء الله وان اعجبك ارزع لايك abo_abary_conditional_formatting.rar1 point
-
1 point
-
1 point
-
انسخ هذه المعادلة و اسحب نزولاً =IF(INDIRECT("C"&ROWS($A$1:A1)*2)="","",INDIRECT("C"&ROWS($A$1:A1)*2))1 point