نجوم المشاركات
Popular Content
Showing content with the highest reputation on 03/21/20 in all areas
-
سهله 🙂 بدل ما نأخذ اسم ملف الجداول ومساره من BE_Path = DLookup("[Database]", "MSysObjects", "[Flags]=2097152") 'Path and BE name انت اكتبه يدويا، هكذا BE_Path = "D:\myDB\my_BE.mdb" 'Path and BE name او BE_Path = application.currentdb.path & "\myDB\my_BE.mdb" 'Path and BE name جعفر3 points
-
وعليكم السلام 🙂 انا لا تجربة لي في هذا الموضوع ، ولكني اعتقد عمله يكون بنفس طريقة ميزان السيارات 🙂 قد نستفيد من هذه الروابط : . . . الفكرة هي ، خلي التخاطب يصير بين الجهاز والكمبيوتر ، ومنها نحصل على طرف الخيط 🙂 وطبعا كل جهاز يكون معاه برامجه ، وخصوصا SDK الجهاز ، واللي فيه جميع الاوامر اللي يقبلها الجهاز ، لذا ، شوف شو هي البرامج والملفات اللي تيجي مع الجهاز ، ومنها ننطلق 🙂 جعفر3 points
-
اضافة لما تفضل به الاستاذ @أحمد الفلاحجى اذا لم ترغب في الاستعلام ممكن عملها في النموذج في حدث بعد التحديث للحقل time نضع الكود التالي Me.dated = DateAdd("d", -[time], Date)2 points
-
الاستاذ العزيز @أحمد الفلاحجى فكرة ذكية استخدام اسنعلام التحديث2 points
-
2 points
-
وعليكم السلام شوف الاستعلام لعل هذا ما تريد Expr1: DateAdd("d";-[time];Date()) او استخدم استعلام التحديث لتحديث الحقل dated بالنتيجه تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق exp(1).accdb2 points
-
الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا هل تقصد حذفه من جدولى القيد الاساسى بعد الترحيل ؟ اذا كان كذلك اتفضل ان كان غير ذلك وضح اكثر بارك الله فيك Move Data TableDatabase_up.rar2 points
-
ممتاز 🙂 اروح آخذ غفوة الظهيرة ، والليلة خير ان شاء الله 🙂 جعفر2 points
-
في حدث بعد التحديث للحقل TYPE بعد الكود الذي كتبه اخي احمد ضع الكود التالي Me.OTHER = Me.NUMBER + 10 ولكن ماذا لو اردت تغيير القيمة الى 15 او 20 الافضل اضافة مربع نص للقيمة TEST AA1.accdb2 points
-
الشكر لله ثم لاخواننا واستذتنا جزاهم الله خيرا اخى @عذاب الزمان يفضل بعد ذلك فتح موضوع جديد مراعاه لقوانين الموقع اتفضل ان شاء الله يكون ما تريد تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق TEST AA(2).accdb2 points
-
2 points
-
2 points
-
😀 والله انا مثلك اخى @kha9009lid هو عنده الحلين يختار بقى اللى يحبه جزاكم الله خيرا2 points
-
IIf([dateexp]<=[datee];"red";"green") ما اعرف انا فهمت المطلوب لكن قلت باشارك exp - Copy.accdb2 points
-
2 points
-
اخى الفاضل @عذاب الزمان اتفضل شروحات من منتدانا العزيز ومن منتدى الفريق العربى للبرمجه جزاهم الله خيرا اخواننا واساتذتنا http://arabteam2000-forum.com/index.php?/topic/250549-استخدام-الدالة-dlookup/ اخى واستاذى العزيز @kha9009lid احسنت بارك الله فيك وجزاك الله خيرا صحيح وشكرا للتنبيه اخى واستاذى @kha9009lid هذا لانى قمت بجعل الحقل غير منضم على ونسيته ارفقته بعد التعديل جزاك الله خيرا TEST AA.accdb2 points
-
كود مختصر اكثر Me.NUMBER = Me.TYPE.Column(2) TEST AA.accdb استاذنا الفاضل @أحمد الفلاحجى في مرفقك بعد التنفيذ لا يتم الحفظ في جدول TBL12 points
-
وعليكم السلام اتفضل ان شاء الله يكون ما طلبت بعد اختيار حقل type سيتم جلب القيمه فحقل numper تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق TEST AA.accdb2 points
-
2 points
-
استاذي الفاضل محمد سلامه الاتصال بالميزان عن طريق كبل نت ورك اي ميزان من هذه الانواع اكيد له برنامج يتاعمل معه ولا كن توجد برامج من صنع مبرمجين تعمل معه وترسل له بيانات ولكن انا اريد عمل برنامج بالاكسيس يتعامل مع اي ميزان يطبع باركود واستطيع ارسال اصناف وتحديثها في اي وقت2 points
-
2 points
-
1 point
-
بعد اذن الاساتذة الافاضل واتراء للموضوع جرب المرفق قم بفك الضغط وضع المجلد في اي فولدر تريد MyFolder.rar1 point
-
الله يبارك لكم في عافيتكم وصحتكم استاذ سليم نعم في الملف الذي عندي عملته وكان رائعا ويختصر الكثير من الوقت يسرت لي الكثير الكثير يسر الله سبحانه وتعالى اموركم واعانكم لفعل الخير وفقكم الله وزادكم علما ومعرفة لكم وافر احترامي وتقديري1 point
-
100%100 True لكن ادرج ماكرو البحث من خلال الحروف (الازار الحمراء) في صفحة All in Order وذلك من اجل سرعة التفتيش عن اسماء بحرف معين1 point
-
الاساتذة @أحمد الفلاحجى و @kha9009lid اخجلتموني بطيبت قلوبكم ومساعدتكم الحمد لله لوجود امثالكم حفظكم الله ورعاكم من كل سوء1 point
-
تم العديل على الماكرو ليتناسب مع ما تريد الاعمدة حيث كلمات معلومة1 /معلومة 2 الخ... (يجب اخفائها من أجل ملاحظة البيانات جيداً) يمكنك اظهارها اذا كانت ضرورية حجم الملف كبير جداً (حوالي 16 ميغا مضغوطاً) لذلك لم استطع رفعه فقط ادرج هذا الكود في ملف تجريبي (نسخة ثانية من نفس الملف) عندك وقم بتجربته (اشدد على النسخة الاحتياطية ربما كان هناك اخطاء و كما تعرف لا يمكن التراجع (Undo) بعد تنفيذ الماكرو) Option Explicit Sub Salim_Code() Rem Created By Salim Hasbaya On 21/3/2020 Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Dim All As Worksheet Dim Source_sh As Worksheet Set All = Sheets("All_In Order"): Set Source_sh = Sheets("data1") Dim RgD As Range, c As Range Dim st$, t$, Mon_array() Dim m%, lr%, lrc%, Er%, lc%, lastRo_data1% lastRo_data1 = Source_sh.Cells(Rows.Count, "D").End(3).Row If lastRo_data1 <= 3 Then Exit Sub Set RgD = Source_sh.Range("D4:D" & lastRo_data1) Mon_array = Array("ا", "ب", "ت", "ث", "ج", "ح", "خ", "د", "ذ", _ "ر", "ز", "س", "ش", "ص", "ض", "ط", "ظ", "ع", "غ", "ف", _ "ق", "ك", "ل", "م", "ن", "ه", "و", "ي") With All .Range("B5").Resize(9999, 11 * 28).ClearContents For Each c In RgD t = Mid(Trim(c), 1, 1) st = Left(t, 1) If st = "أ" Or st = "آ" Or st = "إ" Then st = "ا" m = Application.Match(t, Mon_array, 0) If Not IsError(m) Then lc = (m - 1) * 11 + 3 lr = Application.Max(5, .Cells(Rows.Count, lc).End(xlUp).Row + 1) .Cells(lr, lc - 1).Value = lr - 4 .Cells(lr, lc).Resize(1, 7).Value = _ c.Offset(, -2).Resize(1, 7).Value .Cells(lr, lc + 7).Value = Source_sh.Cells(c.Row, "o") .Cells(lr, lc + 8).Value = Source_sh.Cells(c.Row, "AJ") Else: Er = Er + 1: End If Next .Columns.AutoFit .Range("a1").ColumnWidth = 22 End With MsgBox "تم بحمد الله" & IIf(Er > 0, vbCr & Application.Rept("=", 30) & vbCr & "عدد الاسماء الخطا غير المرحلة" & vbCr & Er, "") Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub1 point
-
جرب هذا الكود تم تغيير اسم الورقة الاخير ة الى "All_In Order" Option Explicit Sub Salim_Code() 'كود الاستاذ الخالدي ترحيل البيانات حسب الحروف الهجائية Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Dim All As Worksheet Dim Source_sh As Worksheet Set All = Sheets("All_In Order"): Set Source_sh = Sheets("data1") Dim RgD As Range, c As Range Dim st$, t$, Mon_array() Dim m%, lr%, lrc%, Er%, lc%, lastRo_data1% lastRo_data1 = Source_sh.Cells(Rows.Count, "D").End(3).Row If lastRo_data1 <= 3 Then Exit Sub Set RgD = Source_sh.Range("D4:D" & lastRo_data1) Mon_array = Array("ا", "ب", "ت", "ث", "ج", "ح", "خ", "د", "ذ", _ "ر", "ز", "س", "ش", "ص", "ض", "ط", "ظ", "ع", "غ", "ف", _ "ق", "ك", "ل", "م", "ن", "ه", "و", "ي") With All .Range("B5").Resize(9999, 11 * 28).ClearContents For Each c In RgD t = Mid(Trim(c), 1, 1) st = Left(t, 1) If st = "أ" Or st = "آ" Or st = "إ" Then st = "ا" m = Application.Match(t, Mon_array, 0) If Not IsError(m) Then lc = (m - 1) * 11 + 3 lr = Application.Max(5, .Cells(Rows.Count, lc).End(xlUp).Row + 1) .Cells(lr, lc - 1).Value = lr - 4 .Cells(lr, lc).Resize(1, 8).Value = c.Resize(1, 8).Value Else: Er = Er + 1: End If Next .Columns.AutoFit .Range("a1").ColumnWidth = 22 End With MsgBox "تم بحمد الله" & IIf(Er > 0, vbCr & Application.Rept("=", 30) & vbCr & "عدد الاسماء الخطا غير المرحلة" & vbCr & Er, "") Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub tarhil_by_lettrs.xlsb1 point
-
1 point
-
استاذي الفاضل @jo_2010 في اجابتي لاستفسارك وضعت عبارة x = CurrentRecord اي ان المتغير x = السجل الحالي ثم يتم استكمال بقية الكود وهذا الامر قد يؤدي الى نتيجة غير صحيحة في حالة حذف سجلات في الجدول لكون CurrentRecord يعطي رقم السجل الفعلي باستبعاد السجلات المحذوفة بناء عليه امل اختيار اجابة الاستاذ @خالد سيسكو او اجابة استاذنا ومعلمنا @jjafferr او تعديل السطر الثاني في مشاركتي ليكون x = Me.PCode الملف المعدل مرفق Dental.accdb1 point
-
الاخ العزيز احمد جزاك الله خير .... نعم هو ما اردته فعلا لكن حقيقة هذه الدالة لم افهمها ساحاول اخراج شرحها من النت لاجل فهمها . الف تحيه وشكر لكم جميعا1 point
-
السلام عليكم استاذنا الفاضل سليم حاصبيا وفقكم الله نسال الله سبحانه وتعالى ان لايحرمنا من لمساتك المبدعة وفقكم الله ورزقكم الصحة والعافية وزادكم من فضله انا غيرت الرقم حسب الشيتات الموجود مع القاعدة وهي 20 شيت اي غيرت الرقم الى 20 والكود يعمل بصورة سليمة ورائعة لكم تحياتي ووافر احترامي1 point
-
بالمناسبة جرب تنفيذ هذا الكود و ترى العجائب Sub ARange_sheets() Dim t%, i% Dim col As Object, itm t = Sheets("Main").Index Set col = CreateObject("System.Collections.Arraylist") On Error Resume Next For i = t + 1 To Sheets.Count col.Add CInt(Sheets(i).Name) Next On Error GoTo 0 If col.Count Then col.Sort: col.Reverse For Each itm In col Sheets(itm & "").Move after:=Sheets(t) Next End If Set col = Nothing End Sub1 point
-
بعد اذنكم مااريده هو مثلا 0.90*0.90=0.81 يعني اقل من واحده يعطيني النتيجة 250 ريال بينما اذا كان واحد اواكثر يعطيني 350 ريال العرض × الطول × العدد = المساحة ( يعني اذا كانت المساحة اقل من 1 يعطيني الناتج 250 اما اذا 1 او اكثر يعطيني الناتج 350 وشكرا لكم واسف لازعاجكم ومنكم نتعلم FoMaNsHeE شكررررررررررررررررررررررررررررررا لكم وعلى القائمين على هذا الموقع المعادلة المطلوبه تمام1 point
-
1 point
-
الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا وفيك بارك الله اخى @ازهر عبد العزيز1 point
-
اسف استاذي جعفر ظنيت ان ذكري للمصدر الذي وجدت فيه مطلوبي كان يكفي جزاكم الله عنا خيرا1 point
-
تم حل مشكلة الفلترة مع اضافة تنسيق التاريخ الى combobox سيتم تصدير الورقة FilteredData الى مجلد الملف الاصلي كملف جديد مع امكانية اختيار اسم لهذا الملف test.rar1 point
-
حل جميل استاذ @خالد سيسكو ومن باب اثراء الموضوع حل احر عن طريق دالة Switch =Switch([f_sex]=1;"ذكر";[f_sex]=2;"انثى") قائمة منسدلة31.accdb1 point
-
تم التعديل كما تريد Option Explicit Sub Create_Sheet_WITH_HYPER() Rem =======>> CREATED BY SALIM HASBAYA ON 20/3/2020 Dim Tg As Worksheet Dim i%, My_name$ Dim RGA As Range, Var_Rg As Range Dim Final_Rg As Range, Ro% Application.ScreenUpdating = False Set RGA = Salim.Range("C8").CurrentRegion.Columns(1) If Salim.AutoFilterMode Then Salim.Range("c8").CurrentRegion.AutoFilter End If Application.DisplayAlerts = False For Each Tg In Sheets If Tg.Name <> "Salim" Then Tg.Delete Next Tg Application.DisplayAlerts = True For i = 4 To 6 'تستطيع ان تغير الرقم 7 الى اي رقم اقل من 72 (عدد الأعمدة+4) Set Var_Rg = Salim.Cells(8, i).CurrentRegion.Columns(i - 2) Var_Rg.AutoFilter 1, Criteria1:="<>" If Len(Salim.Cells(8, i)) > 30 Then My_name = Left(Salim.Cells(8, i), 30) Else My_name = Salim.Cells(8, i) End If Sheets.Add(after:=Sheets(Sheets.Count)).Name = My_name With ActiveSheet RGA.SpecialCells(12).Copy .Range("B2") Var_Rg.SpecialCells(12).Copy .Range("C2") .Range("B:C").Columns.AutoFit .Hyperlinks.Add Anchor:=.Range("E2"), Address:="", SubAddress:= _ "Salim!A9", TextToDisplay:="Goto SALIM" End With Set Final_Rg = ActiveSheet.Range("B2").CurrentRegion Ro = Final_Rg.Rows.Count If Ro > 1 Then With ActiveSheet .Range("A2") = "N#" .Range("A" & Ro + 2).Offset(, 1) = "Sum" .Range("A3").Resize(Ro - 1) = Evaluate("Row(1:" & Ro & ")") .Range("A" & Ro + 2).Offset(, 2).Formula = "=SUM(C3:C" & Ro + 1 & ")" .Range("A" & Ro + 2).Offset(, 2).Value = _ .Range("A" & Ro + 2).Offset(, 2).Value .Range("B2:b3").Copy .Range("A2").Resize(Ro).PasteSpecial Paste:=xlPasteFormats .Range("A" & Ro + 2).Resize(, 3).PasteSpecial Paste:=xlPasteFormats End With Application.CutCopyMode = False End If Salim.Range("C8").CurrentRegion.AutoFilter '============================ Next Salim.Select Application.ScreenUpdating = True End Sub الملف مرفق من جديد My_NEW_filter.xlsm1 point
-
جرب هذا الكود Option Explicit Sub find_Over_Three() Dim R%, i% With Range("Bq5").Resize(187, 2) .ClearContents .Interior.ColorIndex = xlNone End With R = Cells(Rows.Count, 1).End(3).Row With Range("Bq5").Resize(R - 4) .Formula = "=COUNTIF(B5:BP5,""شخصى"")" .Value = .Value End With For i = 5 To R If Cells(i, "Bq") > 3 Then Cells(i, "Bq").Interior.ColorIndex = 6 End If Next End Sub الملف مرفق April.xlsm1 point
-
وعليكم السلام ورحمة الله وبركاته سيدي الفاضل .... بارك الله فيك.... المحور الصادي يحوي الكمية والثمن ألا أن الكمية قليلة جدا بالنسبة للثمن فلذلك لم تظهر المخطط الخاص به ... بالنسبة لعلامات ؟؟؟؟؟؟؟؟؟ غير نوع الخط في المخطط .. ليس الاشكال في طرح السؤال بارك الله فيك ورفع قدرك ..... وانما الأفضل للمنتدى وللبحث للاخرين في المنتدى ( طرح الموضوع مرة واحدة .... واذا لم تتوصل الى الاجابة .... ترفع الموضوع ليراه الأخرون باضافة عبارة للرفع أو UP ليس بيننا اعتذار .... لأني قد اخطأ وعليك تقويمي بارك الله فيك وعلى سعة صدرك .... أهلا بك أخي ولا تتردد في طرح أي سؤال .... وعلينا الاجابة بما نعرف والعذر منك لما لا نعرف1 point
-
اتمنى يكون ده المطلوب =IF(A1=0,"",IF(A1>=1,350,IF(A1<1,250))) وشكرا New Microsoft Excel Worksheet.xlsx1 point
-
حيث ان الداتا عندك لا تشكل جدولاً للاكسل (هناك خلايا مدمجة ويجب ان يكون بجانب الجدول عامود فارغ وفوقه صف فارغ) تم ادراج صف فارغ (رقم 7) وعامود فارغ B ليفصل الجدول عن بقية الخلايا ) تم انشاء ملف جديد بما تريد (للانتقال الى اي ورقة فقط اضغط DoubleClick على اسمها من الورقة Salim ) الكود Option Explicit Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim My_name$ On Error Resume Next If Not Intersect(Target, Range("d8:Pb8")) Is Nothing _ And Target.Count = 1 Then My_name = Left(Target, 30) Sheets(My_name & "").Select End If End Sub '++++++++++++++++++++++++++++++++++++++++++++++++++++++ Option Explicit Sub Create_Sheet() Dim Tg As Worksheet Dim i%, My_name$ Dim RGA As Range, Var_Rg As Range Set RGA = Salim.Range("C8").CurrentRegion.Columns(1) If Salim.AutoFilterMode Then Salim.Range("c8").CurrentRegion.AutoFilter End If Application.DisplayAlerts = False For Each Tg In Sheets If Tg.Name <> "Salim" Then Tg.Delete Next Tg Application.DisplayAlerts = True For i = 4 To 7 'تستطيع ان تغير الرقم 7 الى اي رقم اقل من 72 (عدد الأعمدة+4) Set Var_Rg = Salim.Cells(8, i).CurrentRegion.Columns(i - 2) Var_Rg.AutoFilter 1, Criteria1:="<>" If Len(Salim.Cells(8, i)) > 30 Then My_name = Left(Salim.Cells(8, i), 30) Else My_name = Salim.Cells(8, i) End If Sheets.Add(after:=Sheets(Sheets.Count)).Name = My_name With ActiveSheet RGA.SpecialCells(12).Copy .Range("B2") Var_Rg.SpecialCells(12).Copy .Range("C2") .Range("B:C").Columns.AutoFit .Hyperlinks.Add Anchor:=.Range("E2"), Address:="", SubAddress:= _ "Salim!A9", TextToDisplay:="Goto SALIM" End With Salim.Range("C8").CurrentRegion.AutoFilter '============================ Next Salim.Select End Sub الملف مرفق My_filter.xlsm1 point
-
كان من الواجب عليك حفظ الملكية الفكرية التي هي من اساسيات هذا المنتدى و اعلان اسم من وضع لك الكود في الملف ربما كان الحل في الشيت Repport من هذا الملف Saerch_by_column.xlsm1 point
-
1 point
-
1 point
-
بعد اذن استاذ طارق المرفقات ...مع ملاحظة 1- ضع الملفات الفرعية في مجلد باسم MyFolder في القسم c 2- ضع الملف الرئيسي 00.xlsm في اي مكان ترغب فيه بشرط ان لايكون داخل المجلد ضمن الملفات الفرعية 3- يمكن لك تغير مسار الملفات الفرعية دخل المجلد في هذا السطر داخل علامتي "" Folderpath = "C:\MyFolder\" 00.xlsm 01.xlsx 02.xlsx 03 .xlsx1 point
-
السلام عليكم أخي الكريم ممكن تراجع هذا الموضوع قد يكون هو ماتريد1 point