نجوم المشاركات
Popular Content
Showing content with the highest reputation on 05/29/15 in all areas
-
السلام عليكم ورحمة الله وبركاته إخواني الكرام في موضوع للأخ الحبيب محمد حسن أبو يوسف ، قمت بعمل تصفية للبيانات بناءً على مربع نص ، إلا أنه في مشاركة للأخ الغالي رشراش علي أن الكود لا بعمل مع الأرقام ولا يعطي نتيجة ، كما أن الأخ أحمد أبو زيزو طلب مني شرح خطوات العمل فيما يتعلق بهذا الموضوع رابط الموضوع وبناءً على طلب إخواني ، وهم يدركون أنني لا أتأخر عليهم أبداً أقدم لكم موضوع اليوم فارتأيت (حلوة ارتأيت دي ... ) أن أخصص موضوع لهذا الأمر ، نظراً للطلب عليه ، ونظراً للفائدة المرجوة منه ، حيث أنه يسهل عملية البحث من خلال تصفية البيانات المطلوبة. يعتمد الملف المرفق على مثال بسيط للتطبيق ، تم إدراج مربع نص TextBox من خلال التبويب Developer ثم من Insert اختر مربع نص TextBox من القسم ActiveX Controls والبيانات المراد التعامل معها تبدأ من الخلية C3 وحتى آخر خلية بها بيانات... إليكم إخواني الكود مع شرح مبسط للأسطر عله يفيدكم Private Sub TextBox1_Change() 'يقوم الكود بالبحث في نطاق من خلال مربع نص ، وتصفية النتائج طبقاً للنص المدخل '[Insert] ثم من قائمة [Developer] من خلال التبويب [TextBox] قم بإدراج مربع نص 'ثم قم بإدراجه على ورقة العمل [ActiveX Controls] قم بالنقر على مربع النص الموجود في '-------------------------------------------------------------------------- 'تعريف المتغيرات والثوابت Dim LastRow As Long, RngFiltered As Range, I As Long, Arr Static Rng As Range 'إلغاء خاصية اهتزاز الشاشة Application.ScreenUpdating = False 'إلغاء الفلترة في ورقة العمل النشطة ActiveSheet.AutoFilterMode = False 'قيمة تظهر كل الصفوف لهذا النطاق [Static] إذا لم يكن للثابت المسمى If Not Rng Is Nothing Then Rng.EntireRow.Hidden = False 'تحديد آخر صف به بيانات في العمود الثالث LastRow = Range("C1000").End(xlUp).Row 'أي الخلية التي تسبق أول البيانات [C2] تعيين قيمة النطاق بداية من الخلية Set Rng = Range("C2:C" & LastRow) 'تعيين قيمة للمتغير من النوع مصفوفة ليساوي كل قيم النطاق Arr = Rng.Value 'إذا كان طول السلسلة النصية في مربع النص أكبر من صفر If Len(TextBox1.Text) > Then 'حلقة تكرارية لصفوف النطاق For I = 1 To UBound(Arr, 1) '[']إذا كان العنصر داخل المصفوفة رقمي يتم وضع علامة If IsNumeric(Arr(I, 1)) Then Arr(I, 1) = "'" & Arr(I, 1) Next I 'قيم النطاق تساوي القيم الجديدة في المصفوفة Rng.Value = Arr 'تصفية النطاق بشرط النص المدخل في مربع النص Rng.AutoFilter Field:=1, Criteria1:="=" & TextBox1.Text & "*" End If 'تعيين المتغير ليساوي الخلايا الظاهرة في النطاق Set RngFiltered = Rng.SpecialCells(xlCellTypeVisible) 'إلغاء الفلترة في ورقة العمل النشطة ActiveSheet.AutoFilterMode = False 'حلقة تكرارية لإعادة الأرقام للحالة الأولى بدون العلامة البادئة For I = 1 To UBound(Arr, 1) If Left(Arr(I, 1), 1) = "'" Then Arr(I, 1) = Mid(Arr(I, 1), 2) End If Next I Rng.Value = Arr 'إخفاء الصفوف للنطاق Rng.EntireRow.Hidden = True 'إظهار الصفوف للنطاق الذي تمت عملية التصفية على أساسه RngFiltered.EntireRow.Hidden = False 'إعادة تفعيل خاصية اهتزاز الشاشة Application.ScreenUpdating = True End Sub أترككم مع الملف المرفق .. قوموا بتجربة الملف .. تم إدراج بيانات مختلفة نصوص باللغة العربية وباللغة الإنجليزية وأرقام ... حمل الملف من هنا تقبلوا تحياتي أخوكم ياسر خليل أبو البراء3 points
-
أولا : السلام على من اتبع الهدى من المسلمين و غيرهم فاليكن أول كلامك السلام حتى تطمئن القلوب . ثانيا : ما هى العيوب التى تراها بالملف ؟ انا لا ارى اي عيوب و الملف يفى بالغرض المطلوب منه بوضعه الحالى ، ام انك تريد تغيرا جذريا بالملف و بناء جديد غير الذى بنيته .. التغيير يعنى بالضرورة ان نقوم بفهم المطلوب و نوعية المخرجات التى تريدها أنت تطالبنا بتغيير فى ملف انت بنفسك بنيته .. ان كنت تبغى معادلة فهذا سهل ان كنت تبغى كود فهذا أيسر أنت تطالبنا بملف خالى من العيوب ؟ فما هى العيوب التى تراها لنشاركك فى الوصول الى مرادك بطريقة سهلة و خالية من العيوب .. أوضح فكرتك من فضلك حتى يتيسر لنا فهم ما تريد ، أعيد ثانيا اننى لا ارى عيوبا بالملف . دمت بخير و اعزك الله .2 points
-
أتمنى من الله أن تكونوا جميعا بالف خير حبيت أطرح موضوع أكيد ليس بالجديد ولكنه مفيد أحيانا أتمنى الإفادة للجميع الموضوع هو عن فك حماية أوراق العمل Worksheets في أي مستند فالمرفق يحتوي على إضافة يمكن إضافتها للإكسل لتكون ثابته في كل ملفات الإكسل ما عليك إلا أن تفتح الملف الذي به الأوراق محمية وتضغط على الزر الذي سيتم تعيينه في الـ Ribbon وسيتم فك التشفير في لحظات http://forum.tawwat.com/images-topics/images/fa/0042.gif أولا : الكود المستخدم Public Sub ExcelPasswordRemover() Dim Mess As String, Header As String Dim Credit As String Dim RepBack As String, AllClear As String Dim PWord1 As String Dim ShTag As Boolean, WinTag As Boolean Dim w1 As Worksheet, w2 As Worksheet Dim i As Integer, j As Integer, k As Integer, l As Integer Dim m As Integer, n As Integer, i1 As Integer, i2 As Integer Dim i3 As Integer, i4 As Integer, i5 As Integer, i6 As Integer Application.ScreenUpdating = False Header = "Ýß ÊÔÝíÑ ÕÝÍÇÊ ÇáÅßÓá" Credit = vbNewLine & vbNewLine & "ãäÊÏíÇÊ ÃæÝíÓäÇ ÇáÊÚáíãíÉ" RepBack = vbNewLine & vbNewLine & "www.officena.com" With ActiveWorkbook WinTag = .ProtectStructure Or .ProtectWindows End With ShTag = False For Each w1 In Worksheets ShTag = ShTag Or w1.ProtectContents Next w1 If Not ShTag And Not WinTag Then Mess = vbNewLine & "áÇ íæÌÏ ßáãÉ ÓÑ ááÕÝÍÇÊ ÇáÍÇáíÉ" & vbNewLine & Credit MsgBox Mess, vbInformation, Header Exit Sub End If Mess = "ÓæÝ ÊÓÊÛÑÞ ÚãáíÉ Ýß ÇáÍãÇíÉ ËæÇäí ãÚÏæÏÉ" & _ vbNewLine & "OK ÅÖÛØ " & vbNewLine & "æÅäÊÙÑ ÍÊì íÊã Ýß ÇáÍãÇíÉ " & vbNewLine & _ Credit MsgBox Mess, vbInformation, Header If Not WinTag Then Mess = "" & _ "" & vbNewLine & _ "ÌÇÑí ÍÐÝ ÇáÍãÇíÉ " & _ Credit MsgBox Mess, vbInformation, Header Else On Error Resume Next Do For i = 65 To 66: For j = 65 To 66: For k = 65 To 66 For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66 For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66 For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126 With ActiveWorkbook .Unprotect Chr(i) & Chr(j) & Chr(k) & _ Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _ Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) If .ProtectStructure = False And _ .ProtectWindows = False Then PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _ Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) Mess = "You had a Worksheet Structure or " & vbNewLine & _ Credit MsgBox Mess, vbInformation, Header Exit Do End If End With Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next Loop Until True On Error GoTo 0 End If If WinTag And Not ShTag Then Mess = "Only structure / windows protected with " & vbNewLine & _ "the password that was just found." & vbNewLine & _ AllClear & Credit & RepBack MsgBox Mess, vbInformation, Header Exit Sub End If On Error Resume Next For Each w1 In Worksheets w1.Unprotect PWord1 Next w1 On Error GoTo 0 ShTag = False For Each w1 In Worksheets ShTag = ShTag Or w1.ProtectContents Next w1 If Not ShTag Then Mess = AllClear & Credit & RepBack MsgBox Mess, vbInformation, Header Exit Sub End If For Each w1 In Worksheets With w1 If .ProtectContents Then On Error Resume Next Do For i = 65 To 66: For j = 65 To 66: For k = 65 To 66 For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66 For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66 For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126 .Unprotect Chr(i) & Chr(j) & Chr(k) & _ Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) If Not .ProtectContents Then PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _ Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) Mess = "Êã ÍÐÝ ßáãÉ ÇáÓÑ " & _ Credit MsgBox Mess, vbInformation, Header For Each w2 In Worksheets w2.Unprotect PWord1 Next w2 Exit Do End If Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next Loop Until True On Error GoTo 0 End If End With Next w1 Mess = AllClear & Credit & RepBack MsgBox Mess, vbInformation, Header End Sub يمكن استخدامه كماكرو عادي أو يمكن استخدامه كإضافة للإكسل لتكون ثابته في كل الملفات Addin طريقة إضافة الـ Addins للإكسل كالتالي بعد فتح أي ملف إكسل ومن علامة الإكسل في أقصى اليسار نضغط عليها ثم نضغط Excel Options ثم من القائمة نضغط على Addin ثم نضغط Go ونختار الإضافة من المكان الذي تم حفظها فيه ثانيا إظهار الإضافة في الـ Ribbon وأخير قم بفتح أي ملف به صفحات محمية بباسورد وأضغط على الإضافة كما موضحه في الصورة التالية وسيتم فك الحماية بمشية الله Sheet Password Remover AddIn.rar1 point
-
بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته ---------------------------------------------------------------------------- فيديو مدته دقيقة فلا تستهين به ربما ينقذك من اصعب المواقف وهو فقد او تلف بيانات ملف الاكسيل طريقة عمل نسخه احتياطية من ملف اكسيل https://www.youtube.com/watch?v=1xHS1snXRKs1 point
-
السلام عليكم اخي jjafferr كلامك جميل أما محاسبيا فهذا الكلام مرفوض لانه ممكن أن يحذف أي رقم من المنتصف بشكل طبيعي وهذا لا يشكل أي مشكلة وتكرار رقم والعودة الى المبرمج لتصحيحه فهي مشكلة أكبر قد يكون الوصول الى المبرمج صعب وقد يكون مكلف أيضا وقد نضطر الى حذف اعداد كثيرة من المنتصف فهنا الدالة dcount فاشلة بامتياز محاسبيا ولكن لمعرفة عدد سجلات أو أعمال احصائية أو مراقبة فهي الافضل دائما وهنا dmax فاشلة بامتياز أيضا فلكل دالة مقام ومقال تحياتي لك أستاذي الكبير jjafferr1 point
-
السلام عليكم أخي جزاكم الله خيراً ((الخط مناسب أم أقوم بتصغيره أكثر)) تمام أخي الفاضل أحمد الرشيدي تقبل تحياتي1 point
-
تم معالجة الامر بدون كود فقط بواسطة المعادلات وهي (مطاطة يمكنك اضافة او تغيير البيانات) probl salim.rar1 point
-
هل هناك تصور محدد لشكل الفاتورة التي تريدها ؟ إذا لم يكن هناك تصور نترك المجال لأصحاب الخبرة في تصميم الفواتير للتدخل1 point
-
أخي الكريم احمد يمكنك أن تفتح الباب لعالم البرمجة من خلال الرابط التالي http://www.officena.net/ib/index.php?showtopic=56941 أيهما أفضل : في نظري 2007 و 2013 أستأذنك في تصغير حجم الخط قليلاً .. تقبل تحياتي1 point
-
السلام عليكم ورحمة الله أخي الكريم عبد العزيز، عليك بتبديل القيم في هذه النافذة بوضع القيمة الكبيرة في Min والقيمة الصغيرة في Max أي عكس ما في الصورة التي وضعتها.... أخوك بن علية1 point
-
أنت النبراس الذي أضأت لي الطريق أحيانا بيكون صاحب الموضوع نفسه مش عارف يعبر عن طلبه بشكل جيد ، وهذه مشكلة في نظري تحدث كثيراً فيأتي الغوث من أصحاب الخبرة العاملين في نفس المجال تقبل تحياتي1 point
-
أخي علاء يا رب يا رب تكون مصيب في قولك وإلا هتحصل مصيبة بسبب كلامك ده نداء للأخ الكريم شريف حتى ولو لم يكن هذا في نيتك فقل أنك كنت تريد هذا الأمر .. مش عايزين علاء يسيب المجال المحاسبي (كدا المجال هيخسر أحد أكبر رجاله !!) ربنا يستر ربنا يستر1 point
-
أخي الفاضل أحمد الرشيدي قم ببناء التصور الذي تريده واطرح موضوع واتنين وتلاتة أو أكثر وفي كل مرة اطلب طلب جديد وإن شاء الله ستجد من يقدم لك يد المساعدة فقط كن محدد الهدف1 point
-
انا برأي ان معادلة Index افضل لا ن Offset من المعادلات التي تسمى Volatil وهي التي تعيد احتساب الصفحة بأكملها مع كل تغيير في اي خلية ما رايك اخي ياسر؟1 point
-
الله أكبر بالفعل أخى الكريم ياسر أبو البراء هذا هو المطلوب إن شاء الله .. رائع جدا الحل الذى قدمته كم أغبطك على هذا و أتمنى أن أصل الى هذه الدرجة من الاحترافية ، ما شاء الله كم سيسعد و يفرح الأخ الكريم شريف ان شاء الله بهذا الجهد الحسن .. دمتم بخير و أعزكم الله .1 point
-
وعليكم السلام من النموذج الفرعي ، تستطيع استعمال نفس الكود ، لأي حقل في نفس النموذج الفرعي ، من النموذج الرئيسي ، استعمل الكود التالي لقفل حقل في النموذج الفرعي: مثلا: Me.FrmCridi_sub.Form.Obsérvation.Enabled = False me.اسم النموذج الفرعي.Form.اسم الحقل في النموذج الفرعي.Enabled = False جعفر1 point
-
1 point
-
أخي الحبيب علاء رسلان إن كان كما تقول فجرب المعادلة بهذا الشكل علها تفي بالغرض بدون أعمدة مساعدة =SUMPRODUCT((LEFT($A$2:$A$17,3)=""&A20&"")*($C$2:$C$17))-SUMPRODUCT((LEFT($A$2:$A$17,3)=""&A20&"")*($D$2:$D$17)) تقبل تحياتي1 point
-
السلام عليكم ورحمة الله أخي الكريم عبد العزيز، في هذه الحالة يمكنك عكس قيمتي Min و Max في خصائص SpinButton... أرجو أني قدمت يد المساعدة في هذا الخصوص... أخوك بن علية1 point
-
السلام عليكم أخي أبو البراء الغالي: قمت بحذف الكود في الملف ونسخت بدلاً عنه الكود كاملاً مع اقترحت تعديله فلم أفلح إلا بعد نظرت إلى أمر لم يكن بالحسبان لدي .Sheets("Sheet1").Delete حيث أن أسماء الأوراق لدي بالعربية أصبحت كما يلي: ("ورقة 1") بدلاً من ("sheet1").. وقد نجحت المحاولة نجاحاً باهراً.... تهانينا لكم على هذا العمل الررائع والسلام عليكم.1 point
-
السلام عليكم ورحمة الله أخي الكريم، حسب فهمي للمطلوب هذه محاولة في الملف المرفق... وإن لم يكن كذلك ما عليك إلا العمل بما طلبه منك أخونا الكريم أبو البراء... أخوك بن علية الملف المرفق : 02_ملف_الخزينة_بالمعادلات.rar1 point
-
وعليكم السلام ورحمة الله وبركاته جزيت خيراً أخي الغالي ابو يوسف على مرورك العطر وكلماتك الطيبة تقبل تحياتي1 point
-
الأخ الفاضل سامي 741 روح للتبويب Formulas ثم Name Manager ثم حدد رقم_الجلوس المراد التعديل عليه (لاحظت أن هناك عدد 2 نطاق مسمى بنفس الاسم ..احذف واحد وأبقي على الآخر للتعديل عليه ) المهم اضغط Edit ثم في الحقل المسمى Refers To قم بوضع المعادلة التالية ثم أوك ثم Close =OFFSET('كنترول شيت'!$B$11,,,COUNTA('كنترول شيت'!$B$11:$B$1000)) تقبل تحياتي Dynamic Defined Name.rar1 point
-
اسف اخواني على عدم المقدرة على الرفع في المرة الأولى لكبر حجم الملف و اسف اخ mr heshamm لاني خفضت حجم الملف بإزالة الصور فقط التي ببرنامجك حتى استطيع رفعه للاخوه ومساعدتك بارك الله فيهم وفيك New folder (3).rar1 point
-
يا من فهّم سليمان فهمنا ...ويا من علم داود علمنا ...اللهم علمنا ما ينفعنا وانفعنا بماعلمتنا ...آمين العلم من الصغر كالنقش في الحجر والعلم في الكبر كوخز الأبر.....يمكن راحت علينا...ختيرنا...1 point
-
أخي الغالي أبو يوسف ما السطر الذي يحدث عنده خطأ ؟ وما هي نسخة الأوفيس التي تعمل عليها ؟ الأخ الكريم المنار أحسنت في فكرة تقديم موضوع جديد .. هل كنت فعلاً أنه يمكن معالجة الأمر بدون برمجة !! المعادلات عملها محدود للغاية ، بينما البرمجة تفتح لك آفاقاً واسعة في الملف المرفق يتم إنشاء مصنفات جديدة وأوراق عمل داخل المصنفات وإغلاق وحفظ هذه المصنفات بالإضافة إلى إدراج بيانات بها ...فكيف للمعادلات أن تقوم بمثل تلك الخطوات ؟؟1 point
-
اخي عبدالله اخواني الاعزاء : يجب ان نعلم انه لايمكن تحويل ملف قاعدة بيانات الاكسس الى ملف تنفيذي ! ويجب ان نعلم انه ليس منطقيا ان نفكر في ذلك ! عندما تتكون لدينا المعرفة التامة عن الاكسس وماهو وكيف تركيبته الفنية والوظيفية فاننا لانفكر ابدا كيف نحول ملفات الاكسس الى ملفات تنفيذية exe !!! بالتوفيق1 point
-
لك الحق اخي قصي ويجب ان نتمسك بشرح الاستاذ ياسر وان يتمسك بالشرح دائما فالمنتدى ملئ بالاعمال القيمه ولكن البعض لايستطيع تطويعها في اعمال اخرى ولذا الشرح ... الشرح1 point
-
الأستاذ العملاق ياسر خليل انت استاذ بما تحمله الكلمه من معاني ساميه طريقة عرضك للموضوع احترافيه الشرح وافي حتى تنسيق الكتابه من حجم والوان رائعه لاأجد غير جزاك الله كل خير وننتظر منك شروحات اكثر كل يوم جمعه1 point
-
بعد إذن الأخ mr.heshamm قمت برفع البرنامج لك بارك الله في عملك حتى يطلع الاخوة على طلبك لمساعدتك بارك الله فيهم1 point
-
عزيزي الطالب أهلا بك برجاء إرفاق ملف توضح فيه بالتفصيل ما تريد وإن شاء الله بسيطة1 point
-
1 point
-
الأخ الحبيب والمعلم الكبير طارق اسمح لي أن أتقدم رغم أنه لا يحق لي التدخل بعد ردك ..إلا أنني كنت قد جهزت الكود ولكن عطلني أنني أردت شرحه للاستفادة منه الأخ الكريم المنار (ربنا يكفيك شر النار وشر الأشرار ويجعلك من المتقين الأبرار) :fff: إليك الملف التالي وإن شاء الله يفي بالغرض Sub SplitWB() 'يقوم الكود بفصل بيانات كل موظف في مصنف جديد مقسم إلى أوراق عمل جديدة '-------------------------------------------------------------------- 'تعريف المتغيرات Dim WB As Workbook Dim Arr Dim I As Long 'إلغاء خاصية اهتزاز الشاشة Application.ScreenUpdating = False 'تعيين قيمة للمتغير ليساوي كل القيم في النطاق الحالي في ورقة العمل 'المتغير يخزن البيانات على شكل مصفوفة Arr = ThisWorkbook.Sheets("Sheet1").Cells(1).CurrentRegion.Value 'حلقة تكرارية من الصف الثاني وحتى آخر صف به بيانات 'الحد الأعلى للبعد الأول للمصفوفة ألا وهو بعد الصفوف [UBound(Arr, 1)] حيث يمثل هذا الجزء For I = 2 To UBound(Arr, 1) 'ليساوي المصنف الجديد [WB] تعيين المتغير Set WB = Workbooks.Add 'بدء التعامل مع المصنف الجديد With WB 'إضافة ورقة عمل باسم "ملاحظات" ، ووضع البيانات المرتبطة من العمود التاسع بالمصفوفة With .Sheets.Add .Name = "ملاحظات" .Range("A1") = "ملاحظات" .Range("B1") = Arr(I, 9) .Columns.AutoFit End With 'إضافة ورقة عمل باسم "الأداء والمعلومات المالية" ، ووضع البيانات المرتبطة من العمود الرابع والسابع والثامن بالمصفوفة With .Sheets.Add .Name = "الأداء والمعلومات المالية" .Range("A1").Resize(3, 1) = Application.Transpose(Array("التقييم السنوي", "الراتب", "البدلات")) .Range("B1") = Arr(I, 4) .Range("B2") = Arr(I, 7) .Range("B3") = Arr(I, 8) .Columns.AutoFit End With 'إضافة ورقة عمل باسم "المعلومات الأساسية" ، ووضع البيانات المرتبطة من العمود الأول والثاني والثالث والخامس بالمصفوفة With .Sheets.Add .Name = "المعلومات الأساسية" .Range("A1").Resize(5, 1) = Application.Transpose(Array("اسم الموظف", "تاريخ التعيين", "الجنسية", "الوحدة", "الشعبة")) .Range("B1") = Arr(I, 1) .Range("B2") = Arr(I, 2) .Range("B3") = Arr(I, 3) .Range("B4") = Arr(I, 5) .Range("B5") = Arr(I, 6) .Columns.AutoFit End With 'وهي ورقة عمل افتراضية في أي مصنف جديد [Sheet1] حذف ورقة العمل المسماة .Sheets("Sheet1").Delete 'حفظ المصنف الجديد في نفس مسار المصنف الحالي باسم البيان الموجود في العمود الأول بالمصفوفة .SaveAs ThisWorkbook.Path & "\" & Arr(I, 1) & ".xlsx" 'إغلاق المصنف الجديد الذي تم حفظه .Close End With 'الانتقال لصف جديد والتعامل مع مصنف جديد Next I 'إعادة تفعيل خاصية اهتزاز الشاشة Application.ScreenUpdating = True 'رسالة تفيد بانتهاء عمل الكود MsgBox "Done !", vbInformation End Sub وفي انتظار مساهمتك يا باشمهندس .. زيادة الخير خيرين .. تقبلوا تحياتي :fff: Split Data Into Mulptiple Workbooks YasserKhalil.rar1 point
-
أما أنا أخي الكري أنصحك بوضع فكرة العمل ثم ابدأ به وما تواجه من مشاكل راجع المنتدى ويساعدك الجميع ان شاء الله لأنك صاحب خبرة سابقة وما إن تبدأ حتى تستعيد كل معلوماتك وأنا حدث معي نفس الشيء وعدت الى المنتدى وفي اسبوع استرجعت جزء كبير من معلوماتي وتابع مواضيع المنتدى بشكل يومي ستجد اشياء تشد انتباهك وأفكار تساعدك كثيرا1 point
-
قم بفتح الملف الأول ثم بعد ذلك افتح تبويب إدراج واختر إدراج كائن من مجموعة نص ومن القائمة اختر نص من ملف ثم اختر كافة الملفات التي تريد دمجها مرة واحدة كما في الصورة بإمكانك استخدام المقاطع من أجل رؤوس صفحة وتذييل مختلف لكل مجموعة صفحات وبالإمكان تحميل هذه الإضافة للوورد من هذا الرابط http://www.extendoffice.com/download/kutools-for-word.html وباستخدامها يمكن دمج المستندات ووضع فاصل صفحات بينها أو فاصل مقطعي بين كل منها1 point
-
أخي الحبيب احمد الرشيدي تفضل Smallest Number Greater Than Zero.rar1 point
-
السلام عليكم جرب الأتي إستبدل المعادلة التي في نص 2 في التقرير بهذه =ArbNum2Text(Val([Total]);2;3;"درجـة";"درجات";1;"جزء";"أجزاء";1)1 point
-
الجواب: 1- الكائنات التي لها هذا الخيار هي الاشكال _ مربع النص _ الصور _ لوحة الرسم القماشية _ WordArt _ SmaerArt _ المخطط , 2- يصبح هذا الخيار غير متوفر لهذه الكائنات عند ادراج كائن داخل لوحة الرسم القماش 3- الكائن الذي له علاقة بخيارات التفاف النص هي لوحة الرسم القماشية فتصبح هذه الخيارات غير متوفرة للكائنات المدرجة داخلها 4_ السبب ان لوحة الرسم القماشية هي التي يصبح لها هذا الخيار لتحريكها مع الكائنات المدرجة داخلها 5- الخيار الذي يتوافق مع نقطة الادراج " المؤشر" هو الالتفاف سطري مع النص والسلام عليكم ورحمة الله وبركاته1 point
-
السلام عليكم أخي محمد انا لن اتطرق لطريقة عمل النموذج الجديد ، "لأننا" لم نلحظ المشكلة في النموذج الاصل ولكني دخلت في كود Combopn_AfterUpdate : pn = DLookup("pn", "code", "[pn]=forms!frm_dataentry!Combopn") size = DLookup("Size", "code", "[pn]=forms!frm_dataentry!Combopn") vendor = DLookup("Vendor", "code", "[pn]=forms!frm_dataentry!Combopn") Description = DLookup("Description", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrl = DLookup("Maxrl", "code", "[pn]=forms!frm_dataentry!Combopn") Maxrlegyptair = DLookup("Maxrlegyptair", "code", "[pn]=forms!frm_dataentry!Combopn") ACType = DLookup("actype", "code", "[pn]=forms!frm_dataentry!Combopn") Pos = DLookup("pos", "code", "[pn]=forms!frm_dataentry!Combopn") BiasRadial = DLookup("biasradial", "code", "[pn]=forms!frm_dataentry!Combopn") code = DLookup("code", "code", "[pn]=forms!frm_dataentry!Combopn") لاحظت انك تنادي الجدول (اي تعمل استعلام للجدول) 10 مرات !! انا دائما لما اعمل برامجي ، اعمل البرنامج على اساس انه سيكون عبارة عن جزئين ، الواجهة FE ، والجداول BE ، وان الجداول BE ، ستكون في شبكة ، وان الواجهة FE ستكون لأكثر من مستخدم. لهذا السبب ، فيجب ان نقلل الزحمة في الشبكة ، وذلك بتقليل زيارة/استعلام الجداول قدر الإمكان ، وعند كل زيارة ، يجب ان نأخذ اكبر كمية من البيانات المطلوبة ، ثم نتعامل معها محليا في FE. لذلك ، فانا هنا اعطيك احد البدائل (والتي لا يعرفها الكثير ، لأنها تعمل على الاكسس 2003 فما فوق) ، فالكود التالي ، يقوم بزيارة/استعلام الجدول عن طريق DLookup مرة واحدة ، ويأخذ 10 بيانات مرة واحدة ، فلذا يمكن ان يستبدل كودك اعلاه: Dim x() As String A = Nz(DLookup("[pn] & '|' & [Size] & '|' & [Vendor] & '|' & [Description] & '|' & [Maxrl] & '|' & [Maxrlegyptair] & '|' & [actype] & '|' & [pos] & '|' & [biasradial] & '|' & [code]", "code", "[pn]=forms!frm_dataentry!Combopn"),"|||||||||") 'ويمكن استعمال اي شيء بدل عن | فمثلا الفاصلة 'A حتى اذا لم هناك قيمة للمتغير Nz نستعمل الدالة 'عدد مرات وضع العلامة | في نهاية السطر ، يكون نفس عددها في المعادلة 'لهذا السبب نرى اننا وضعنا 9 منها في نهاية السطر x = Split(A, "|") ' For i = LBound(x) To UBound(x) ' Debug.Print x(i) ' Next i Me.pn = x(0) Me.size = x(1) Me.vendor = x(2) Me.Description = x(3) Me.Maxrl = x(4) Me.Maxrlegyptair = x(5) Me.ACType = x(6) Me.Pos = x(7) Me.BiasRadial = x(8) Me.code = x(9) جعفر1 point
-
File Name: شيت كنترول للمرحلة الثانوية العامة File Submitter: ابو ابراهيم فرحات File Submitted: 17 January 2015 File Category: قسم الإكسيل شكرا لكل من علمنمي في هذا المنتدى و خاصة استاذي عبد الله باقشير الرجاء من عمالقة هذا المنتدى تقيم العمل Click here to download this file1 point
-
فهرس الحقات السابقة http://www.officena.net/ib/index.php?showtopic=55853 لجديد الدورة يمكنك متابعة المنتدى الخاص بالدورات http://www.officena.net/ib/index.php?showforum=161 للتسجيل لحضور البث الحي للحلقة الثامنة - السبت 25 أكتوبر العاشرة و النصف مساء بتوقيت الامارات ، التاسعة والنصف بتوقيت السعودية ، الثامنة و النصف بتوقيت القاهرة ، السادسة و النصف بتوقيت جرينتش الأماكن محدودة لذا يرجي التسجيل اذا كنت تنوي الحضور فقط https://attendee.gotowebinar.com/register/4932463400232368130 تسجيل الحلقة بعد البث لمن لم يستطع الحضور:1 point
-
فهرس الحقات السابقة http://www.officena.net/ib/index.php?showtopic=55853 لجديد الدورة يمكنك متابعة المنتدى الخاص بالدورات http://www.officena.net/ib/index.php?showforum=161 إعادة تسجيل الحلقة الاولي من المستوى المتوسط بسبب وجود بطء فى الاتصال بالانترنت سبب تأخير فى الصوت و الصورة فى البث الحي تسجيل الحلقة السابق من هنا1 point
-
اعزائي اساتذتي اعضاء ومشرفين وخبراء المنتدى لقد استفدت كثيرا من الكود التالي للاخ رجب جاويش في ترحيل طلبة ناجحين وراسبين كل في شيت خاص وفرحتي كانت كبيرة اذ ان الكود عمل بعد التعديل من قبلي عليه وبعد جهد جهيد الا ان فرحتي لم تكتمل اذ ان الناجحين تم ترحيلهم بدون اي مشكلة وتمام الا ان الراسبين كانت نقلهم بين صف واخر اعني يترك صفا فارغا بين طالب واخر فما المشكلة التي في الكود بحيث يعمل هذا .... كما عندي طلب اخر هل ممكن اضافة سطر للكود بحيث يمسح كل البيانات المرحلة (اي في شيتي الناجحين والراسبين)للاستفادة من اي تغيرات في شيت النتائج وبالتالي نرحل حسب التغييرات الجديدة. انتظر ردودكم التي تغني الموضوع دائما وابدا وشكرا لكم Sub ragab() Dim LR As Integer LR = [c10000].End(xlUp).Row Sheets("success").Range("c5:r1000").ClearContents Sheets("fail").Range("c5:r1000").ClearContents Application.ScreenUpdating = False x = 5: y = 5 For I = 5 To LR If Cells(I, 16).Value = "0" And Cells(I, 2) <> " " Then Range("a" & I).Resize(1, 17).Copy Sheets("success").Range("a" & x).PasteSpecial xlPasteValues Application.CutCopyMode = False x = x + 1 ElseIf Cells(I, 16).Value > "0" And Cells(I, 2) <> " " Then Range("a" & I).Resize(1, 17).Copy Sheets("fail").Range("a" & y).PasteSpecial xlPasteValues Application.CutCopyMode = False y = y + 2 End If Next I1 point
-
الاخ الفاضل الاستاذ المحترم / عبد الله المجرب السلام عليكم ورحمة الله وبركاتة برجاء قبول هذه المشاركة البسيطة بعدما يتم تحديد كافة الخلايا وازالة التامين عنها بالكامل كما تفضل الاستاذ / عبد الله بالاشاره اليه لتحديد جميع الخلايا ذات الصيغ يتم الضغط علي مفتاح F5 ثم اختيار (خاص - بعدها نختار صيغ ) ثم نقوم بتامين الخلايا التي قام الاكسيل بتحديدها وهي هنا الخلايا ذات الصيغ والمعادلات شكرا1 point
-
السادة // أعضاء المنتدى المحترمين السلام عليكم ورحمه الله وبركاته ،،، اليكم ملف اكسل به شرح لما ورد فى الكتاب والسنه من معانى أسماء الله الحسنى أسأل المولى عز وجل أن يتقبله عملا خالصاً لوجهه الكريم و أسأل الله عز وجل أن ينال إعجابكم دمتم فى أمان الله وحفظه تقبلوا منى وافر الإحترام والتقدير من أسماء الله الحسنى وما ورد فيها وعنها وأهمية الإيمان بها.rar1 point
-
1 point
-
1 point
-
إخواني وأحبائي وأساتذتي الكرام basem said مجدى يونس خالد القدس حمادة عمر عباس السماوي هانى ابو ادهم ragab65 ابومازن محمود كل من مر وعلق أو لم يعلق لكم مني جزيل الشكر والإحترام1 point
-
السلام عليكم ورحمة الله وبركاته أعضاء منتدى الأكسيس الأعزاء أريد برنامج عبارة عن قاعدة بيانات للطلاب تحتوي على معرف لكل طالب عبارة عن كود مكون من 5 أرقام يتم ادخاله من عندي يجب أن يتميز البرنامج بمايلي طباعة بطاقة ذكية لكل طالب بها اسمه ومعرفه وباركود ( نفس رقم المعرف ) تسجيل غياب الطالب وتأخره من خلال بطاقته بتمريرها على قارئ الباركود البحث عن الطالب بالاسم أو العائلة أو رقم المعرف امكانية سحب البيانات من ملف اكسيل إلى البرنامج ( يعني سحب كشوف أسماء الطلاب لكل مادة ) حتى نتمكن من تسجيل حضور الطالب في كل حصة خلال اليوم الدراسي حيث يسجل للطالب 7 مواد / يوم امكانية احتساب غياب الطالب في كل مقرر وعرضه بواسطة تقرير يوضح فيه عدد حصص الغياب في مقرر ما بحيث اذا وصل غيابه إلى 5 حصص يسجل بجانبه إنذار أول في خانة الملاحظات ويستمر في ذلك حتى يصل الى 10 حصص ويسجل بجانبه إنذار ثاني في خانة الملاحظات ويستمر في ذلك حتى إذا وصل غيابه إلى 15 حصة يسجل بجانب اسمه محروم من اختبار المقرر في خانة الملاحظات وإمكانية الطباعة للتقرير نريد التقرير بالشكل التالي : م اسم الطالب المعرف مجموع الغياب بعذر مجموع الغياب بدون عذر درجة الحضور ملاحظات كذلك نريد تقرير حسب الطالب يوضح فيها مواده المسجله ( 7 مواد ) بجانبها عدد حصص الغياب في كل ماده وماورد في البند 5 أعلاه وإمكانية الطباعة للتقرير نريد التقرير بالشكل التالي لطالب واحد : اسم الطالب المعرف م اسم المقرر مجموع الغياب بعذر مجموع الغياب بدون عذر درجة الحضور ملاحظات إمكانية طباعة بطاقة تعريف للطالب وتحويل للمركز الصحي وطلب تقرير طبي للطالب وطباعة تخفيض للسفر وطباعة التعهدات والالتزامات والمخالفات السلوكية وكل هذا يتم بقارئ الباركود أو الادخال اليدوي لرقم المعرف. طباعة ورقة دخول للفصل للطالب بعد تسجيل التأخر موضح فيها اليوم والتاريخ والوقت والحصة واسم الطالب وقاعته وشعبة المقرر ( ورقة صغيرة مثل السوبر ماركت والمطاعم ) طباعة تقرير يوضح عدد الطلاب المسجلين في كل شعبة من شعب المقرر الواحد وعدد الحاصلين على انذار 1 وانذار 2 و عدد المحرومين من اختبار المقرر كالتالي : معرف المقرر اسم المقرر الشعبة عدد الطلاب المسجلين انذار 1 انذار 2 محروم العدد المتبقي للاختبار ( المسجلين – المحرومين ) درجة الحضور هي درجة موجودة في كل مقرر نريد التحكم في تحديدها من قبل المستخدم ، كما نضع مقدار الحسم عن غياب الحصة بدون عذر يحدده المستخدم ( 0.5 درجة أو 0.25 درجة أو ..... ) بحيث يتم احتساب درجة حضور الطالب في مقرر ما آليا إمكانية التعديل على حصة الغياب وتسجيله بعذرفي نفس تاريخ الغياب عندما يحضر الطالب عذر مقبول أو يستأذن من المدرسة ليتم احتساب عدد ايام الغياب بعذر ولايخصم عليه من درجة الحضور. وضع جدول للبيانات الأساسية للمدرسة و جعل البرنامج نستطيع التحكم فيه ووضع توقيت الحصص من خلال نموذج وضع جدول لبيانات الطلاب مع نموذج للتسجيل مع امكانية سحب البيانات من ملف اكسيل علما بأن رقم المعرف للطالب لا يتكرر لطالب آخر مع التنبيه في حالة الخطأ شاكرين جهودكم في هذا الصرح المعطاء علما بأني مبتدئ في الاكسيس ولكن اذا لم تستطيعوا عمل البرنامج لظروف ما فلا تبخلوا علي بالملاحظات التي تفيدني في عمل هذا البرنامج ودمتم موفقين والسلام عليكم ورحمة الله وبركاته1 point
-
السلام عليكم اخواني أقدم لكم مجموعة من الأمثلة كنت قد حملتها من مواقع عربية و أجنبية لعلها تفيد من له اهتمام بها و المقصود بالمثال هنا ليس برنامج كامل و انما حل برمجي لجزئية معينة من جزئيات المسائل المطلوب حلها . . مع المعذرة عن ذكر اسم الموقع أو اسم المصمم للمثال حيث الأمثلة موجودة عندي من فترة و لم أعد أذكر معلومات عنها و سأقوم ان شا الله بتحميل الأمثلة أولا بأول و أرجو من الأخوة الكرام عدم ادارج أي تعليق هنا حتى يتسع المجال لتحميل أكبر عدد من الأمثلة بأقل عدد من المشاركات , و من أحب التعليق أو الاستفسار فليفتح موضوعا جديدا بهذا الأمر فهرس الأمثلة : تغيير لون خلفية الأكسس مثال على دوال التجميع مثال لفتح النموذج بعدة طرق انسيابية مثال رائع على استخدام خاصية المؤقت في النموذج Timer مثال يجعل النموذج ينتقل تلقائيا من سجل للسجل الذي يليه مثال لعمل جدول يبين جميع البيانات التي تم تعديلها مثال لعمل نسخ احتياطي مجدول زمنيا مثال لعمل ترقيم تلقائي برمجيا نموذج الآلة الحاسبة مثال لفتح نموذج التقويم مثال لكيفية تصفية مربع تحرير و سرد بناء على قيمة مقابلة من مربع تحرير و سرد آخر مثال للتحكم بلون خلفية النموذج و تغييرها من نفس النموذج مثال على كيفية اختيار اسم التقرير المطلوب من لائحة ListBox مثال لكيفية النسخ و اللصق من و الى الحافظة مثال لكيفية تلوين السجل الحالي في النموذج المستمر بلون مختلف مثال لكيفية انشاء شريط قوائم بالكود و اضفة أزرار اليها أو حذفها مثال لمقارنة الاختلافات بين سجلات جدولين مثال على التنسيق الشرطي بعدة طرق مختلفة للنماذج مثال على صنع تقرير مبني على استعلام جدولي محوري CrossTab_Query مثال للتحكم بخصائص مربعات النص من خلال أزرار الاختيار في النموذج مثال للتنقل بين حقول الصفحات Tab Pages من خلال زر أمر مثال مهم جدا يعرض لك حجم المكونات الفعلية للبيانات مثال مفيد جدا لمن يحتاج المساعدة في بناء الاستعلامات بسهولة كبيرة مثال يبين كيفية توظيف الدوال لاستخراج نتائج بيانات النموذج الفرعي من خلال النموذج الرئيسي مثال لتغيير لون زر الأمر بمجرد مرور الفأرة عليه مثال لتفقيط الأرقام - عربي انكليزي مثال على نقل عدة بيانات من نموذج الى نموذج آخر مثال على كيفية التحكم بترتيب عناصر لائحة ListBox من خلال زر أمر مثال لتشغيل استعلام حذف سجلات بناء على قيمة معينة مختارة في النموذج مثال على استخدام شريط التقدم الأزرق Progress Bar مثال على كيفية ارسال بيانات الى ملف وورد , و فتح ذلك الملف بعد انشائه مثال على البحث مع تجاهل التشابه في الحروف مثل الألف و الهمزة مثال على البحث المتقدم في أكثر من حقل مثال على استخدام المؤثرات البصرية في جعل الكائنات تتحرك باشكال هندسية مثال لكيفية تغيير تنسيقات الحقول : تاريخ - نصوص - أحرف مثال على نموذج يحوي نماذج فرعية بثلاثة مستويات1 point