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

عبدالفتاح في بي اكسيل

الخبراء
  • Posts

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

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

  • Days Won

    5

كل منشورات العضو عبدالفتاح في بي اكسيل

  1. @Zakariadz Bms لماذا تجاهلت اجابة الاخ مهند ولماذا لم ترد على ملاحظة الادمن . اذا لم يكن هذا ما تريد ما الذي يضيرك اذا شرحت بالتفصيل طلبك اعتقد هذا ما تريده بعد التخمين !!! Private Sub TextBox1_Change() Me.TextBox1.Text = Format(Me.TextBox1.Text, "#,##0.00") End Sub قم بتعبئة باقي مربعات النص الاخرى كاما اشار الاخ مهند . تحياتي
  2. ولكن ارى شرح كبير جدا لا داعي له . اذا لم اكن مخطيء تريد دمج الفواتير الثلاثة في ملف اكسيل على هيئة جدول يحتوي على الثلاث ملفات . يجب الغاء دمج الخلايا في الفواتير تجنبا لاي مشاكل مع الاكواد .
  3. لماذا لا تحدد شيء واحد فقط بجعلها احمد او بوضع رقم معرف لكل اسم وبالتالي تبحث برقم معرف وليس اسم كما تعلم الاكسيل يتعامل مع الاحرف الانجليزية بالدرجة الاولى وبالتالي ان تجعل ثلاثة احرف مختلفة تظهر لنفس الاسم في كل الاحوال من الصعب على الاكسيل التمييز بينهما ولكن لا اجزم لك انه غير ممكن فقط واصل البحث في الانترنت قد تجد ضالتك
  4. نصيحة حتى تجد تفاعل اكثر تناول كل موضوع بجزئية وانت حقيقة تطلب تصميم برنامج كامل من خلال طلبك لعدة اكواد ولا اعتقد ان احد لديه الوقت لتصميم برنامج كامل لانه في النهاية منتدى تعليمي .
  5. التحديث يتم عن طريق الاسم وليس رقم الهوية لانه رقم الهوية متكرر فكيف سيعرف الاكسيل اي رقم هوية سيتم تحديثها لقد وضعت ملفين وعنوان مجرد تحديث ولم تزودي الاعضاء باي تفاصيل لان هناك عدة احتمالات يتم التعامل معها الاكسيل ولذلك لا تسغربي ان لا احد يدخل في مواضيع صاحبها لم ينشر تفاصيل كاملة. تحياتي .
  6. اختي الكريمة لما لا تضعي الملفين في ملف واحد بواسطة ورقتين .
  7. قم بتطويع الكود بناء على اختيار المدى كما في التعليق ونسخه في موديول الورقة Private Sub Worksheet_Change(ByVal Target As Range) 'غير الاعمدة المراد تنفيدها مع مراعاة تكون الاعمدة متعاقبة If Not Intersect(Range("D:M"), Target) Is Nothing Then Dim myrange As Range With Target If Len(.Value) > 0 Then Set myrange = Columns(.Column) Application.EnableEvents = False If WorksheetFunction.CountIf(myrange, .Value) > 1 Then MsgBox .Value & " عذرا هذا الوقت مكرر.", vbExclamation .ClearContents End If Application.EnableEvents = True End If End With End If End Sub
  8. امسح الكود الخاص بك وجرب هذا الشيء في موديول اليوزرفورم Option Explicit Dim stopLoop As Boolean Private Sub UserForm_Activate() Do Label12.Caption = Format(Now, "hh:mm:ss") DoEvents Loop Until stopLoop End Sub Private Sub UserForm_Terminate() stopLoop = True End Sub
  9. Private Sub TxtSearch_Change() Dim x As Long Me.TxtSearch.Text = StrConv(Me.TxtSearch.Text, vbProperCase) Me.ListBox1.Clear For x = 4 To Application.WorksheetFunction.CountA(Sheet1.Range("A:A")) a = Len(Me.TxtSearch.Text) If Left(Sheet1.Cells(x, 1).Value, a) = Left(Me.TxtSearch.Text, a) Then Me.ListBox1.AddItem Sheet1.Cells(x, 1).Value Me.ListBox1.List(ListBox1.ListCount - 1, 1) = Sheet1.Cells(x, 2).Value Me.ListBox1.List(ListBox1.ListCount - 1, 2) = Sheet1.Cells(x, 3).Value Me.ListBox1.List(ListBox1.ListCount - 1, 3) = Sheet1.Cells(x, 4).Value End If Next x End Sub ADVANCED SEARSH.xlsm
  10. @احمد مبارك يجدر بك اختيار افضل اجابة بناء على المنشور الثالث واقفال الموضوع .
  11. انتبه!! اكثر من طلب لا يمكن للاعضاء النظر الى هكذا مواضيع .
  12. @Mohamed Hicham المطلوب باليوزرفورم وليس داخل الورقة كما فعلتها @احمد مبارك كيف نعرف اذا كان باليوزرفورم او داخل الورقة لم تشرح ذلك ولم تضع زر لليوزرفورم حتى يعلم الاعضاء مجرد صدفة عند دخول محرر الاكواد وجدت اليوزرفورم جرب هذا الكود Private Sub UserForm_Initialize() Dim i As Long For i = 2 To Sheets.Count Me.ComboBox1.AddItem Sheets(i).Name Next i End Sub اخفاء ورقة عمل في الكمبوبوكس.xlsm
  13. يمكنك اضافة عمود لمعرف كل طالب حتى تستطيع تمييزه عن الاخر لا اعتقد فكرة سديدة يكون اسم الورقة كبير جدا مما يخفي بقية اسماء الشيتات عندها عليك تحريكه بالسهم حتى تراهم
  14. @رحااال لا داعي لان تجعل صفوف فارغة يمكن كتابة البيانات بشكل طبيعي وعمل فرز وسيتم وضع بيانات الاسم المكرر تحت بعضها ومن تم يمكنك عمل فرز يدوي او تسجيل ماكرو مع اضافة بعض الاسطر لادراج صف اجمالي لكل اسم مكرر تحياتي
  15. فقط احرص الا يكون هناك ملف اخر مفتوح قد تكون قمت بتنشيط صفحة ملف اخر وشغلت اليوزرفورم هذا ما اتوقعه الان لاحظت الخطا . مرة اخرى لم توضح ذلك هل اقوم بالتخمين ( لاحظت ذلك بعد عدة محاولات عندما اقوم بالبحث واختيار الكومبوبوكس) مجرد محاولة استبدله بهذا Set w = Worksheets("acc").Range(Worksheets("acc").Range("c3"), Worksheets("acc").Range("c3:c10000").End(xlDown))
  16. هل تقصد عند الضغط على زر الرئيسية يعطي مرجع غير صالح (بسبب حماية الورقة الغي الحماية) بالاضافاة انه غير مرتبط باليوزرفورم لقد قمت بتشغيلة من داخل المحرر يعمل بدون اي خطا فقط اربط الزر باليوزرفورم اما اذا كان شيء اخر قم بتفصيل اكثر لتجد تفاعل من بقية الاعضاء تحياتي
  17. اعتقد اني فهمتك الان جرب هذا التعديل واستبدله بالكود السابق في حدث تهيئة اليوزرفورم Private Sub UserForm_Initialize() Dim i As Long Dim not_matched As String not_matched = "cust" For i = 2 To 1000 If Range("c" & i) = not_matched Then If WorksheetFunction.CountIfs(Range("D2:D" & i), Range("D" & i), Range("C2:C" & i), not_matched) = 1 Then Me.Combobox1.AddItem Range("D" & i) End If End If Next i End Sub
  18. لم افهم عليك , هل تريد تغيير عناصر الكومبووبكس للعمود C بدلا من D ام ماذا ؟ طبق ما يدور في ذهنك وقم بنشره داخل الملف .
  19. جرب هذا الملف واعلمني كيف يعمل معك ..تحياتي عدم وجود تكرارات في الكومبوبوكس.xlsm
  20. لنفترض ان الكومبوبوكس لديك مجموعة من الاسماء واخترت اسم كما موجود عندك ولو قلنا ان لديك في اخر صف اسم مختلف واخترت الاسم الاول سوف يجلب الرصيد الاخير لاسم اخر موضوعك غير واضح وغير منطقي ولا اعتقد ان احدا سيقوم بتخمينات قد لا تكون صحيحة (ساعد نفسك بشرح وافي حتى يساعدك الاخرين) قد تجد شخص اخر يفهم موضوعك رجاء لا تبعث رسائل خاصة ( يجب ان تكون جميع النقاشات مفتوحة حتى يستفيد الاعضاء الاخرين المتطلعين على موضوعك) تحياتي
  21. لماذا تضع الاسم في في الكومبوبوكس اذا كان هو اسم واحد فقط ثم سيتم جلب الرصيد الاخير لاسم واحد فقط لا اعتقد ان الكومبوبوكس ذو فائدة في هذه الحالة الكومبوبوكس مصمم لمجموعة عناصر مختلفة
  22. احدف بياناتك قي الشيت الثاني ابتداء من BI1 Sub test() Dim r As Range Sheets("sheet2").UsedRange.Clear With Sheets("sheet1") Set r = .[t1:t2] With .Range("t3", .Range("t" & Rows.Count).End(xlUp)).Resize(, 8) r(2).Formula = "=countblank(" & .Rows(2).Range("c1").Resize(, 6).Address(0, 0) & ")<6" .AdvancedFilter 2, r, Sheets("sheet2").Cells(61) End With r.Clear End With End Sub
  23. @mr7mix انا استبعد ان الاكسيل يمكنه القيام بذلك على حسب ما فهمت منك . لم لا تضع النتيجة التي تريدها وان قلت لي لا استطيع يعني استحالة فعلها بالاكسيل انظر الى الصورة جيدا لقد وضعت بيانات بسيطة كمثال . هل هذا ما تريده ؟ او
  24. ولماذا لا تقوم بنسخ ما داخل الفورم الى ورقة محددة وطباعتها لا اعتقد ان الفورم مصمم لهكذا اشياء لم تمر علي من قبل كما لااجد اي فائدة مما تطلبه . لم اطلع على ملفك يمكنك اخفاء الادوات الموجودة خارج الفريم وبالتالي سوف يطبع ما هو موجود داخل الاطار
  25. لا اعتقد ممكن مع خلايا مدمجة وان امكن سيحدث لك مشاكل في المستقبل وقد يتم تدمير ملف اكسيل وتفقد جميع بياناتك لذلك ينصح العمل على خلايا غير مدمجة وتوجد مقالات كثيرة في الانترنت حول خطورة الخلايا المدمجة التي تسبب مشاكل كبيرة .
×
×
  • اضف...

Important Information