بحث مخصص من جوجل فى أوفيسنا
![]()
Custom Search
|
كل الانشطه
- Today
-
waleed907 started following مكتبة الموقع - برنامج العطاء للعقارات الاصدار 3.7
-
مكتبة الموقع - برنامج العطاء للعقارات الاصدار 3.7
waleed907 replied to waleed907's topic in قسم الأكسيس Access
العفو جميعا هذا ليس مجهودي فقط وانما انتهي هذا البرنامج بمجهود ومشاركة العديد من خبراء ادارة الموقع ممن يحضروني @jjafferr @ابوخليل @رمهان @Shivan Rekany الشكر لله سبحانه وتعالي ثم الاخوة الذين تجاوبوا لحل المشاكل لي ولغيري من الاعضاء لنظهر بمثل هذه البرامج . رابط نواة 32 بت السابق ارفاقة في المكتبة وتم ارفاق نسخة تعمل على 64 بت امل تجربتها للتاكد من عملها على النواة المطلوبة @Mohamed Wahba @عاشق_الرقي برنامج العطاء للعقار 3.7 نواة 64 بت.rar -
E server or ActiveX A problem occurred while Microsoft Access was communicating with the OLE server or ActiveX Control التفسير المحتمل: هنا Access فشل في التواصل مع OLE Server (زي تحكم ActiveX) أو عنصر زي مستعرض ويب أو عنصر رسومي مدمج. يظهر غالبًا بعد: تحديثات النظام أو الأوفيس غير المتوافقة فقدان أو تلف في ActiveX Control المستخدم داخل النماذج تعريف خاطئ أو غير مُسجل (Unregistered ActiveX DLL/OCX) استخدام WebBrowser, TreeView, Calendar Control, أو غيره من العناصر القديمة مشكلة اعدادات اللغة لو تم تنصيب نسخة ويندوز جديدة ------------------- There isn't enough memory to complete the Automation object operation on the | object. التفسير المحتمل: المقصود هنا أن Access فشل في تنفيذ عملية Automation Object (زي التعامل مع Excel أو Word من خلال كائنات Automation). السبب الأساسي بيكون: نقص فعلي في الذاكرة أو تسريب في الموارد (Memory Leak) أو نتيجة تحديث للأوفيس أو ويندوز أفسد الـ References (زي مكتبة MS Excel xx.0 Object Library) أو وجود كائن غير مُهيأ Properly قبل الاستخدام
-
جرب تتحقق من اللغه فى النظام لان بعض المشاكل الغير منطقية مثل هذه او غيرها بيكون بسبب اللغة بالنظام
-
خالد جميل started following هل احد ربط مع هية الزكاة والدخل؟
-
وعليكم السلام ورحمة الله وبركاته ,, بناءً على ما فهمته من هذا الكم الهائل من المعطيات 😅 ، جرب هذا التعديل ، حيث تم التعديل عى كودك الأصلي ليصبح = Private Sub أمر1069_Click() On Error GoTo ErrorHandler DoCmd.SetWarnings False DoCmd.RunSQL "DELETE FROM tab_degree_mauel" DoCmd.RunSQL "INSERT INTO tab_degree_mauel(code_fonct, nom_prenom, grade_actuel, categorie, numero_indice_categorie, degre, numero_indice_degre, duree, date_effet, faid_31_12, date_signature_decision, date_reunion_comession, date_calcul_faid_31_12, num_decision) " & _ "SELECT code_fonct, nom_prenom, grade_actuel, categorie, numero_indice_categorie, degre, numero_indice_degre, duree, date_effet, faid_31_12, date_signature_decision, date_reunion_comession, date_calcul_faid_31_12, num_decision " & _ "FROM tab_degree_saisie" DoCmd.RunSQL "DELETE FROM tbl_info_fonctionnaire" DoCmd.RunSQL "INSERT INTO tbl_info_fonctionnaire(num, grade, num_indice_grade, date_effet_grade_actuel) " & _ "SELECT code_fonct, degre, numero_indice_degre, date_effet " & _ "FROM tab_degree_saisie t1 " & _ "WHERE degre = (SELECT MAX(degre) FROM tab_degree_saisie t2 WHERE t2.nom_prenom = t1.nom_prenom)" DoCmd.SetWarnings True Me.Requery MsgBox "تم تحديث البيانات في الجدولين بنجاح", vbInformation + vbMsgBoxRight, "تنبيه" Exit Sub ErrorHandler: DoCmd.SetWarnings True MsgBox " : حدث خطأ أثناء تنفيذ العملية " & Err.Description, vbCritical + vbMsgBoxRight, "خطأ" End Sub أخبرنا بالنتيجة baseZ.zip
- Yesterday
-
وعليكم السلام ورحمة الله وبركاته ,, لم اجد الكود الذي تتحدث عنه ،ولكن قم بالتعديل للدالة التي في الملف السابق الى التالي :- Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range, valToCheck, foundCell As Range Dim duplicateFound As Boolean On Error Resume Next Set c = Intersect(Target, Columns("E")) If c Is Nothing Then Exit Sub Application.EnableEvents = False valToCheck = c.Value If valToCheck <> "" Then Set foundCell = Columns("E").Find(valToCheck, LookIn:=xlValues) If Not foundCell Is Nothing And foundCell.Row <> c.Row Then If WorksheetFunction.CountBlank(Range("K" & foundCell.Row & ":N" & foundCell.Row)) = 4 Then MsgBox "الحالة سبق ادخالها ولم يتم بشانها اجراء", vbExclamation + vbMsgBoxRight, "تنبيه" c.ClearContents duplicateFound = True End If End If If Not duplicateFound Then Cells(c.Row, "D").Value = Date End If End If Application.EnableEvents = True End Sub وأخبرني بالنتيجة
-
وعليكم السلام ورحمة الله تعالى وبركاته بعد إدن أستادنا الفاضل @Foksh جرب إفراغ اليوزرفورم من جميع الأكواد السابقة ولصق الكود التالي ربما يناسبك Private Sub UserForm_Initialize() ComboBox1.Clear: Dim sh As Worksheet For Each sh In ThisWorkbook.Sheets: ComboBox1.AddItem sh.Name: Next ListBox1.ColumnCount = 3: ListBox1.ColumnWidths = "50;70;200" End Sub Private Sub ListBox1_Click() If ListBox1.ListIndex = -1 Then Exit Sub Dim ShName As String, Addr As String ShName = ListBox1.List(ListBox1.ListIndex, 0) Addr = ListBox1.List(ListBox1.ListIndex, 1) Sheets(ShName).Activate: Cells.Interior.ColorIndex = xlNone With Sheets(ShName).Range("A" & Range(Addr).Row & ":F" & Range(Addr).Row) .Interior.Color = vbCyan: .Cells(1, 1).Activate End With TextBox2.Value = ListBox1.List(ListBox1.ListIndex, 2) End Sub Private Sub TextBox1_Change() On Error GoTo Cleanup SetApp False Dim ws As Worksheet, Sh_Name As String, ky As String, LastRow As Long, LastCol As Long Dim OnRng As Variant, i As Long, j As Long, xCount As Long, CellAddress As String Sh_Name = ComboBox1.Value ky = Trim(TextBox1.Text) If Sh_Name = "" Or ky = "" Then ListBox1.Clear Label5.Caption = "عدد النتائج: 0" If Sh_Name <> "" Then Sheets(Sh_Name).Range("A:F").Interior.ColorIndex = xlNone Me.TextBox2 = "" GoTo Cleanup End If Set ws = Sheets(Sh_Name) With ws LastRow = .Cells.Find("*", , , , xlByRows, xlPrevious).Row LastCol = .Cells.Find("*", , , , xlByColumns, xlPrevious).Column End With ListBox1.Clear: ws.Range("A:F").Interior.ColorIndex = xlNone: xCount = 0 OnRng = ws.Range(ws.Cells(4, 1), ws.Cells(LastRow, LastCol)).Value For i = 1 To UBound(OnRng, 1) For j = 1 To UBound(OnRng, 2) If InStr(1, OnRng(i, j), ky, vbTextCompare) > 0 Then xCount = xCount + 1 CellAddress = ws.Cells(i + 3, j).Address(False, False) ListBox1.AddItem Sh_Name ListBox1.List(ListBox1.ListCount - 1, 1) = CellAddress ListBox1.List(ListBox1.ListCount - 1, 2) = OnRng(i, j) ws.Range("A" & (i + 3) & ":F" & (i + 3)).Interior.Color = vbCyan Exit For End If Next j Next i Label5.Caption = "عدد النتائج: " & xCount Cleanup: SetApp True End Sub Private Sub UserForm_Terminate() Dim sh As Worksheet For Each sh In ThisWorkbook.Sheets sh.Range("A:F").Interior.ColorIndex = xlNone Next End Sub Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) TextBox1 = "": ListBox1.Clear End Sub Private Sub ComboBox1_Change() On Error Resume Next If ComboBox1.ListIndex = -1 Then Exit Sub TextBox1 = "": ListBox1.Clear Dim sh As Worksheet For Each sh In ThisWorkbook.Sheets sh.Range("A:F").Interior.ColorIndex = xlNone Next Sheets(ComboBox1.Value).Activate End Sub Private Sub SetApp(ByVal enable As Boolean) With Application .ScreenUpdating = enable: .EnableEvents = enable: .DisplayAlerts = enable .Calculation = IIf(enable, xlCalculationAutomatic, xlCalculationManual) End With End Sub ملاحظة :تم الاستغناء عن الكود Search_In_Sh() فأنت الآن لست بحاجة إليه بحث في عدة أوراق مع التحديد v2.xlsm
-
بسيطة أخي الكريم .. تم التعديل الى الكود التالي :- Private Sub ListBox1_Click() If ListBox1.ListIndex = -1 Then Exit Sub Sheets(ListBox1.Column(0)).Activate Cells.Interior.Pattern = xlNone With Range(ListBox1.Column(1)).EntireRow .Interior.Color = vbYellow .Cells(1, 1).Activate End With TextBox2.Value = ListBox1.Column(2) End Sub
-
أستاذ بارك الله فيك وجزاك الله خيرا لكن أستاذ أريد تلوين الصف وليس خلية مثلا 100 A4:F
-
moho58 started following تحديث بيانات جدول في جدولين بشرط
-
السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل في موضوعي أريد إدراج بيانات جدول في جدولين كما يلي: الكود الموجود في النمودج في زر" تحديث " يقوم بادراج و تحديث جميع بيانات الحقول الموجودة في جدول tab_degree_saisie يقوم بادراجها في جدول tab_degree_mauel أريد الابقاء على هذا الكود وأضيف له خاصية وهي: إدراج الحقول التالية من جدول tab_degree_saisie : degre numero_indice_degre date_effet الحقول السابقة تدرج في الجول المسمى tbl_info_fonctionnaire في الحقول التالية بنفس الترتيب: grade num_indice_grade date_effet_grade_actuel مع مراعاة الشرط التالي لدينا : في جدول tab_degree_saisie لدينا الإسم: خالد مذكور مرتين: خالد عنده الحقل degre يساوي 7 وخالد عنده الحقل degre يساوي 8 هنا نقوم بادراج البيانات في حالة وجود اسماء مكررة الذي عنده الحقل degre الكبير أو الأكبر فهنا نقوم بادراج بينانات خالد في جدول tbl_info_fonctionnaire للحقل degree يساوي 8 أما إذاكان الإسم غير مكرر تدرج البانات مباشرة. وكذلك الشرط الثاني: مثال code_fonct =1 من جدول tab_degree_saisie تدرج في الجدول tbl_info_fonctionnaire في num =1 يعني خلاصة : ادراج وتحديث جميع بيانات الحقول الموجودة في جدول tab_degree_saisie يقوم بادراجها في جدول tab_degree_mauel ادراج 4 حقول كما هي مبينة أعلاه من جدول tab_degree_saisie في جدول tbl_info_fonctionnaire مع مراعاة الشرط إذا كان الإسم مذكور مرة واحدة تدرج البيانات مباشرة إذاكان الاسم مذكور عدة مرات ندرج البيانات فقط للحقل degre الذي يحمل أكبر قيمة و مراعاة الشرط الثاني : مثال code_fonct =1 من جدول tab_degree_saisie تدرج في الجدول tbl_info_fonctionnaire في num =1 نتمنى أن أكون قد أوصلت الفكرة. الرجاء المساعدة والتوجيه وبارك الله فيكم baseZ.accdb
-
ما شاء الله جعله الله فى ميزان حسناتكم
-
السلام عليكم الاستاذ الفاضل Foksh جزاك الله كل خير الحل جميل وبسيط .. ولى استفسار الملف الاصل به كود عند ادخال رقم الحالة يقوم ايضا بادراج تاريخ اليوم فى خانة التاريخ فهل يمكن دمج الكودين فى كود واحد تقبل تحياتى وشكرى وتقديرى
-
أخي @Hesham.Abusna نرجو منك التكرم بإرفاق نسخة من الملف الذي واجهت فيه المشكلة هدا سيساعدنا ذلك كثيرا على فحص هيكل الملف و المعادلات المستخدمة ولربما حجم البيانات ومن ثم تقديم الحل الأمثل بإذن الله كما يجب الإنتباه أنه في بعض الحالات قد يتسبب حجم المعادلات الكبير أو وجود أكواد معقدة أو حتى أوراق فارغة أو مخفية في اختلاف سلوك الكود لذلك فالمعاينة المباشرة ضرورية لتقديم دعم دقيق ومناسب و تشخيص المشكلة بدقة والوقوف على السبب الفعلي على العموم جرب الكود التالي على ملفك الأصلي ووافينا بالنتيجة Option Explicit Sub Sauvegarde_WB() Dim dossier$, chemin$, sFichier$, sPath$, sNom$ Dim WS As Worksheet, newWB As Workbook, newWs As Worksheet Dim n As Integer, data As Variant, OnRng As Range, _ shp As Shape, col As Long, rw As Long On Error GoTo EndClear SetApp False Set newWB = Workbooks.Add(xlWBATWorksheet) newWB.Sheets(1).Name = "Temp" n = 1 For Each WS In ThisWorkbook.Worksheets Set newWs = newWB.Sheets.Add(After:=newWB.Sheets(newWB.Sheets.Count)) sNom = Left(WS.Name, 31) Do While f(sNom, newWB) sNom = Left(WS.Name, 28) & "_" & n: n = n + 1 Loop newWs.Name = sNom Set OnRng = WS.UsedRange If OnRng.Cells.Count > 1 Then data = OnRng.Value newWs.Range("A1").Resize(UBound(data, 1), UBound(data, 2)).Value = data OnRng.Copy newWs.Range("A1").PasteSpecial xlPasteFormats Application.CutCopyMode = False For col = 1 To OnRng.Columns.Count newWs.Columns(col).ColumnWidth = WS.Columns(col).ColumnWidth Next col For rw = 1 To OnRng.Rows.Count newWs.Rows(rw).RowHeight = WS.Rows(rw).RowHeight Next rw Application.Goto newWs.Range("A1"), True End If On Error Resume Next For Each shp In newWs.Shapes If shp.Type = msoFormControl Or shp.Type = msoOLEControlObject Then shp.Delete Next shp On Error GoTo EndClear Next WS newWB.Sheets("Temp").Delete dossier = ThisWorkbook.Path & "\Workbook_Copy" If Dir(dossier, vbDirectory) = "" Then MkDir dossier sPath = Left(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".") - 1) sFichier = sPath & "_" & Format(Now, "dd-mm-yyyy_hh-nn-ss") & ".xlsx" chemin = dossier & "\" & sFichier newWB.Sheets(1).Activate newWB.SaveAs Filename:=chemin, FileFormat:=xlOpenXMLWorkbook newWB.Close False MsgBox "تم نسخ الملفات بنجاح", vbInformation SetApp True Exit Sub EndClear: SetApp True End Sub Private Sub SetApp(ByVal enable As Boolean) With Application .ScreenUpdating = enable: .EnableEvents = enable: .DisplayAlerts = enable .Calculation = IIf(enable, xlCalculationAutomatic, xlCalculationManual) End With End Sub Private Function f(sheetName As String, wb As Workbook) As Boolean Dim sht As Worksheet For Each sht In wb.Sheets If sht.Name = sheetName Then f = True: Exit Function Next sht f = False End Function إليك المرفق مرة أخرى بعد إظافة بعض المعادلات الجديدة للتجربة TEST v2.rar
-
هل تم تحديث ويندوز أم تم تنصيب نسخة جديدة
-
وعليكم السلام ورحمة الله وبركاته .. كفكرة بسيطة ، جرب تعديل هذا الحدث :- Private Sub ListBox1_Click() Sheets(ListBox1.Column(0)).Activate Range(ListBox1.Column(1)).EntireRow.Select TextBox2.Value = ListBox1.Column(2) End Sub الى التعديل التالي :- Private Sub ListBox1_Click() If ListBox1.ListIndex = -1 Then Exit Sub Sheets(ListBox1.Column(0)).Activate Cells.Interior.Pattern = xlNone With Range(ListBox1.Column(1)) .Interior.Color = vbYellow .Activate End With TextBox2.Value = ListBox1.Column(2) End Sub قمت باختيار اللون الأصفر كمثال ، ولك الحرية بالتعديل على مزاجك
-
إما بإعادة تثبيت نسخة ويندوز 11 بتحديثات جديدة ، أو العودة الى الإصدار السابق ( ويندوز 10 ) ..
-
جرتب 10 و 16
-
السلام عليكم ورحمة الله وبركاته إخواني الكرام أطلب منكم مساعدة في تلوين ناتج البحث وبارك الله فيكم بحث في عدة أوراق مع التحديد 01.xlsm
-
ما هو اصدار الأوفيس الذي تستخدمه بعد التحديث ؟؟
-
أستاذي الكريم جزاكم الله خيرا على سعة صدركم والرد علي طلبي ولكن عندما وضعت في أول الكود On Error Resume Next لم تظهر المشكلة وتم تحديث البيانات المطلوبة تماما ولكن الشي الغريب أنه لم تظهر رسالة "تم تحديث البيانات بنجاح عموما ليست ضرورية وجزاكم الله خيرا وزادكم علما وسعة صدر أقصد هكذا جعلتها Private Sub أمر136_Click() On Error Resume Next UpdateBooksToLost End Sub