اذهب الي المحتوي
أوفيسنا

بن علية حاجي

الخبراء
  • Posts

    4359
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    48

كل منشورات العضو بن علية حاجي

  1. السلام عليكم ورحمة الله ألا تقصد بكلامك " وعند اختيار 3 من الثانية يوجد 3 فقط فى الثالثة" هو "وعند اختيار 3 من الثانية يوجد 2 فقط فى الثالثة"؟؟ والذي معناه : الاختيار الذي يكون في A لا يكون موجودا لا في B ولا في C والذي يكون في B لا يكون موجودا في C... إذا كان كذلك فانظر إلى الملف المرفق.. أخوك بن علية قوائم منسدلة مرتبطة_1.rar
  2. السلام عليكم ورحمة الله أخي وحبيبي هشام، إن شاء الله يفك كربتك وكربة جميع المسلمين ويوفق الجميع إلى ما يحب ويرضى... أردت أن أشاركك الموضوع باستعمال أداة (دالة) مهمة من أدوات إكسيل، وقد لاحظت أن الكثير (إن لم لم أقل الجميع) لا يستعمل هذه الأدوات ولم أر تطبيقا منذ أن بدأت تصفح المنتدى يُستعمل فيه هذه الأدوات وهي أدوات ودوال "قواعد البيانات"، وفي المثال بالملف المرفق استعملت دالة DCOUNT وبالفرنسية BDNB وقمت بشرح متطلباتها وتطبيقها على المثال الذي وضعتَه في ردك السابق... أرجوأن تكون الدالة مفيدة للجميع (ولا تنسو أخواتها-أقصد الدالة- والدعاء لنا بظاهر الغيب)... أخوك بن علية عدد الخلايا بين قيمتين.rar
  3. السلام عليكم ورحمة الله أخي الكريم أقدم لك الملف المرفق فيه المطلوب إن كنت قد فهمتُهُ... أخوك بن علية قوائم منسدلة مرتبطة.rar
  4. السلام عليكم ورحمة الله أخي الكريم جزانا الله وإياكم ووفقك أخي الكريم لكل خير... بالنسبة للخلية L10 فهي تحوي مجموع خلايا النطاق I10:K10 كما هو موجود في المعادلة المكتوبة بهذه الخلية (أي هي مجموع علامات مادة الكيمياء) ويمكنك استحداث عمود جديد تضع فيه المجموع العام لكل المواد (عربية بـ24، إنجليزي بـ20، فرنساوي بـ12، تاريخ بـ20، وكمياء بـ20 على ما أعتقد، وعلامة المجموع 96) ويكون الملف (حسب رأيي) كما وضعته في الملف المرفق... وإن شاء الله لا حرج بيننا فتجدني في الخدمة في كل وقت ما دمت أعرف وموجودا بالمنتدى... أخوك بن علية Book2_3.rar
  5. السلام عليكم ورحمة الله أخي الكريم أبو محمد، الكود موجود في الملف ويعمل جيدا وهو مسجل في Module1... وهو كما يلي: Sub KH_START() Dim R As Integer, M As Integer, N As Integer, O As Integer Sheets("محمود").Range("A5:ap1000").ClearContents Sheets("منير").Range("A5:ap1000").ClearContents Sheets("خالد").Range("A5:ap1000").ClearContents M = 5: N = 5: O = 5 Application.ScreenUpdating = False For R = 1 To 1000 If Cells(R, 4) = "محمود" Then Range("A" & R).Resize(1, 5).Copy Sheets("محمود").Range("A" & M).PasteSpecial xlPasteValues Application.CutCopyMode = False M = M + 1 ElseIf Cells(R, 4) = "منير" Then Range("A" & R).Resize(1, 5).Copy Sheets("منير").Range("A" & N).PasteSpecial xlPasteValues Application.CutCopyMode = False N = N + 1 ElseIf Cells(R, 4) = "خالد" Then Range("A" & R).Resize(1, 5).Copy Sheets("خالد").Range("A" & O).PasteSpecial xlPasteValues Application.CutCopyMode = False O = O + 1 End If Next MsgBox ("الحمد لله عملية الترحيل تمت بنجاح...") Application.ScreenUpdating = True End Sub وتجده أيضا في ملف "الترحيل" (الملف المرفق) في ورقة "شرح" يمكنك نسخه من هناك انطلاقا من الخلية التي تحوي الأمر Sub KH_START إلى الخلية التي تحوي End Sub ولصقه في ملفك على شكل Module (ماكرو)... ولكن الكود لا يعمل إلا مع الثلاثة (محمود-منير-خالد)... أخوك بن علية ترحيل.rar
  6. السلام عليكم ورحمة الله أخي الكريم إذا كان القصد من طلبك هو ربع العلامة الموجودة في السطر 7 (العلامة 20 بالنسبة للمجاميع) أي 5 فقد قمت بتغيير شرط "التنسيق الشرطي في هذه الأعمدة، وما عليك إلا تغيير الرقم الموجود في السطر 8 (الملون بالأحمر) من الرقم 8 إلى الرقم الذي تريده وليكن مثلا 5 وسيتم المطلوب بإذن الله... إذا كان المطلوب شيء آخر لم أفهمه من ردك السابق فإني أبقى في انتظار تفسيرك لذلك... تحياتي الخالصة أخي الكريم بن علية Book2_2.rar
  7. السلام عليكم ورحمة الله أخي الكريم جلال، لم أفهم عليك الطلب الجديد الذي قلت فيه : "ممكن زيادة شرط علي الكود لكى بأن يضع دائرة علي مجموع الطالب اللذى لم يحصل علي ربع الدرجة كما في المثال" والسؤال على "ربع الدرجة كما في المثال" هل تقصد بها ربع 20 أي 5 أم غيره؟ أرجو شرحا لذلك... أخوك بن علية
  8. السلام عليكم ورحمة الله أخي الكريم، إن التحويل إلى PDF هو عملية طباعة ومادام هذا الخلل يحدث في الطباعة فإنه يحدث أيضا في التحويل إلى PDF ولا أجد تفسيرا لهذا الأمر إلا أن يكون جهازك قد تعرض إلى فيروس يقوم بحجب الطباعة أو ينقص من نسبة الطباعة... تأكد أخي الكريم أن جهازك خال من الفيروسات لأن المسألة التي ذكرتها غريبة بعض الشيء وليست لا من خواص الطابعات ولا من خواص إعدادت الصفحات التي نعرفها (لست أدري إن كانت هذه الخواص تختلف في أنظمة أخرى غير Windows XP أو في أوفيس آخر غير Office 2003)... والله أعلم
  9. وعليكم السلام ورحمة الله أخي الكريم طارق أعطيت الشرح حقه وزيادة لا أعتقد أنه يوجد شرح غيره، شرح وافي وكافي بارك الله فيك وأمتعك بعلمك وزادك العلم الأوفر، جعل الله لك فيه الخير الكثير والأجر الكبير... أخوك بن علية
  10. السلام عليكم ورحمة الله
  11. السلام عليكم ورحمة الله الملف المرفق يقدم مثالا لعد عدد ألوان تعبئة خلايا بوساطة المعادلات... أخوكم بن علية عد لون التعبئة بالمعادلات.rar
  12. السلام عليكم ورحمة الله أخي الكريم، إليك الملف المرفق وإن شاء الله يفي بالغرض... أخوك بن علية Book2.rar
  13. السلام عليكم ورحمة الله والمثال التالي في الملف المرفق وباستعمال الكود السابق نفسه بتصرف طفيف (تغيير على الكود) يتم عدّ عدد الخلايا التي تم الكتابة فيها بلون خط معين... أخوك بن علية عدد لون الخط.rar
  14. السلام عليكم ورحمة الله أخي الكريم، بالتأكيد يمكن ذلك وأعطيك مثالا على ذلك (حساب عدد ألوان التعبئة في الخلايا) وهو من عمل أخينا "عبد الله عبد السلام"... الق نظرة على الملف المرفق... بن علية عدد الألوان.rar
  15. السلام عليكم ورحمة الله إخواني الكرام، المشكل هذا يقع لما تكون "مجموعة العمل" في الشبكة مختلفة، بعض الأجهزة يكون اسم مجموعة عملها "WORKGROUP" وأخرى يكون اسمها "MSHOME" أو غيرها، لهذا يحدث هذا الخلل ولا تعرف الأجهزة بعضها أوالملفات والطابعات التي تم الاشتراك فيها عبر الشبكة... ولهذا عند تنصيب الويندوز من جديد تم التوافق بين أجهزة الشبكة ومجموعة العمل تكون بالاسم التلقائي WORKGROUP والمتعارف عليه عند شركة مايكروسوفت... والله أعلم
  16. السلام عليكم ورحمة الله لا عليك أخي عبد الرحمن ، لا يوجد أي إحراج المهم وقد قالها أخونا ابو خليل "الحمد لله" أن الأمر نجح واستطعت تصحيح هذا الخطأ والشيء الذي نعرفه لا نبخل به والذي لا نعرفه لا يمكن إعطاؤه... ودعاء طيب يكفي جزاء كبيرا ... وفقك الله إلى كل خير... أخوك بن علية
  17. السلام عليكم ورحمة الله أخي الكريم يمكنك، بعد تسجيل الماكرو code في ملفك، أن تقوم بحفظ هذا الملف باسم *.XLA وستجد الاسم في قائمة "الوظائف الإضافية" في قائمة "أدوات" أرجو أن يكون المفهوم قد وصل... بن علية
  18. وعليكم السلام ورحمة الله أخي الكريم هشام تقبل الله منك هذا الدعاء الجميل جدا، وإن شاء الله يكون ذلك قريبا والله الموفق لكل خير... أخوك بن علية
  19. السلام عليكم ورحمة الله يمكن أيضا القيام بتحديث قاعدة البينات في ملف إكسل بوساطة الكود التالي (وهو أفضل وأسهل من السابق) ولكن يجب أن يكون قد تم استدعاء القاعدة أولا كما شرحت سابقا ثم وضع الكود التالي في Workbook Private Sub Workbook_Open() Sheets("Feuil1").Select ' Feuil1 هي الورقة التي تحوي قاعدة البيانات المستدعاة من قاعدة بيانات ملف أكسس Selection.QueryTable.Refresh BackgroundQuery:=False Sheets("نماذج").Select Range("A1").Select End Sub بن علية
  20. السلام عليكم ورحمة الله بالنسبة لتحويل ملفات الوورد إلى PDF أنصح باستعمال برنامج PDF Factory وأقدم لكم النسخة بالرقم السري الذي نسجله بالرقم 2ZZY-EU38-PHBR في خصائص الطابعات نختار الطابعة FinePrint pdfFactory Pro يالنقر يمينا بالفأرة ونختار "خصائص" (أسفل علبة الحوار) ثم نختار "About" وندخل الاسم (أي اسم) والرقم السري ونضغط على Enter Serial Number والآن في أي تطبيق سواء أكان أحد برامج أوفيس أم غيره يكون بالإمكان تحويله إلى PDF ويتم ذلك بفتح الملف ببرنامجه وطباعته بوساطة هذه الطابعة... ولم ألاحظ أنه قد تم وضعه من طرف الأخ "أما بعد" يشكر عليه... كنت قد وضعت الرابط الخاص بالبرنامج وحذفته بعدما وجدت الأخ أما بعد قد وضعه ويمكن تحميله من مشاركته...
  21. السلام عليكم ورحمة الله أهلا أخي وحبيبي هشام، من المفروض أن عملية الحساب والمطلوب هو كل القيم من المجال [25 ، 30[، أي هي القيم الأكبر من أو تساوي 25 والأصغر تماما من 30... (من العادة نعمل بهذه الطريقة بحكم عملي) وفي هذه الحالة كلتا الصيغتين صحيحتين، بالنسبة للأولى لم نختلف فيها إلا في حالة "=" وإذا كان الأخ يقصد القيم الأكبر تماما من 25 والأصغر تماما من 30 فإجابته هي ما قمت بتصحيحه في ردك (نحذف رمز "=" من العلاقة)... بالنسبة للصيغة الثانية : =COUNTIF($F$1:$F$10;"<30")-COUNTIF($F$1:$F$10;"<25") والتي هي أيضا صحيحة إلا إذا كانت القيم المطلوبة هي من الجال ]25 ، 30[ فيجب كتابة الصيغة على الشكل التالي: =COUNTIF($F$1:$F$10;"<30")-COUNTIF($F$1:$F$10;"<=25") وعمل هذه الصيغ (الأولى مثلا) يقوم بحساب الفرق بين عدد القيم الأصغر تماما من 30 وعدد القيم الأصغر تماما من 25، فيبقى، بالتالي، عدد القيم التي تنتمي إلى المجال [25 ، 30[ وهو المطلوب.. والله أعلم
  22. السلام عليكم ورحمة الله بالنسبة لتحديث القاعدة يمكن جعلها آلية بمجرد فتح الملف "نماذج" يقوم البرنامج بالتحديث وذلك بواسطة كود يتم تسجيل وربطه بفتح الملف... مثل الكود التالي (قمت بتسجيله من خلال مثال): Private Sub Workbook_Open() Sheets("Feuil2").Select 'اسم الورقة التي نضع فيها القاعدة With ActiveSheet.QueryTables.Add(Connection:=Array( _ "OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=C:\Documents and Settings\Utilisateur\Mes documents\bd1.m" _ , _ "db;Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Passw" _ , _ "ord="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Trans" _ , _ "actions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:D" _ , _ "on't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _ ), Destination:=Range("A1")) .CommandType = xlCmdTable .CommandText = Array("Table1") .Name = "bd1_1" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .PreserveColumnInfo = True .SourceDataFile = _ "C:\Documents and Settings\Utilisateur\Mes documents\bd1.mdb" 'الاسم bd1.mdb هو قاعدة أكسس التي تحوي البيانات التي تم استدعاؤها ووضعها بداية من الخلية A1 في الورقة feuil1 .Refresh BackgroundQuery:=False End With Sheets("نمادج").Select End Sub بن علية
  23. وعليكم السلام ورحمة الله أعتقد أنه لا يمكن ربط هذه الدوال بقاعدة بيانات من أكسس مباشرة، يجب استدعاء قاعدة بيانات خارجية في ملفك "النماذج" وتختار هذه القاعدة من ملف تم إنجازها في أكسس (ولكن يضعها في ملفك على شكل ورقة إكسل) ومنها يتم استدعاء البيانات المطلوبة لملء النماذج كلها انطلاقا من هذه القاعدة... ملاحظة: يتم استدعاء قاعدة أكسس في إكسل انطلاقا من الأمر "بيانات" DATA ثم "بيانات خارجية" ثم "استيراد بيانات" Import Data وتختار الملف الذي يحوي القاعدة ثم تختار القاعدة التي بها البيانات (ويتم وضع هذه البيانات في ورقة جديدة) ثم بوساطة الدوال المناسبة تقوم باستدعاء هذه البيانات لملء النماذج الخاصة بك حسب المطلوب... وقاعدة البيانات (في إكسل) يتم تحديثها دائما باستدعاء البيانات الخارجية في الورقة نفسها... والله أعلم
  24. السلام عليكم ورحمة الله إليك الملف المرفق... إن شاء الله يكون هو المطلوب.... أخوك بن علية البيانات.rar
  25. السلام عليكم ورحمة الله أخي الكريم جلال أقدم لك في الملف المرفق صيغتين (حلين) أحدهما باستعمال COUNTIF والآخر باستعمال SUMPRODUCT وهناك حلول أخرى.. أخوك بن علية Book1.rar
×
×
  • اضف...

Important Information