السلام عليكم ورحمة الله
استخدم الكود الآتى
Sub RepTxt_Num()
Dim C As Range, i As Long, x As String, Z As String
For Each C In Range("AI5:AI" & Range("AI" & Rows.Count).End(xlUp).Row)
For i = 1 To Len(C)
x = Mid(C, i, 1)
y = Application.HLookup(x, Range("A1:AF2"), 2, 0)
Z = Z & y
C.Offset(0, 1) = Z
Next
Z = ""
Next
End Sub
بسم الله الرحمن الرحيم، السلام عليكم ورحمة الله وبركاته، أسعد الله أوقاتكم من جديد، موعدنا اليوم مع معلومة مفيدة جدا ومتقدمة جدا، ومهمة جدا في نفس الوقت، ألا وهي تمتع بقوائم أوفيس 2003 في 2007 و 2010 و 2013 و 2016 Mas2003Menus فتابعونا.
تمتع بقوائم أوفيس 2003 في 2007 و 2010 و 2013 و 2016 Mas2003Menus
ربما يبدأ أحدنا بتعليم برنامج ميكروسوفت أوفيس سواء ميكروسوفت وورد أو باوربوينت أو ميكروسوفت إكسل ولكن يبدأ بتعلم إصدار قديم نسبيا وهو أوفيس 2003
وقد يجد صعوبة في الانتقال إلى الإصدارت الحديثة من ميكروسوفت أوفيس سواء 2007 أو 2010 أو 2013 أو 2016 أو 365
اليوم أحضر لكم الحل في صورة كود VBA ووظيفة إضافية Add-in كنت قد صممتها لهذا الغرض في 2010
وهي تقوم بإضافة قوائم أوفيس 2003 في تبويب جديد يسمى add-in في الشريط ribbon
وبهذا نكون جمعنا بين الحسنيين
تابعونا
تعتمد آلية هذا الكود وهذه الوظيفة الإضافية على:
إنشاء شريط قوائم في word أو excel أو power point ثم إضافة عناصر التحكم controls إليه وذلك بأبسط كود ممكن.
ونتعرف أيضا على:
كيفية إنشاء دالة معرفة UDF أو إجراء SUB
كيفية تحويل ملف وورد أو إكسل أو باوربوينت إلى وظيفة إضافية
مسار تخزين الوظائف الإضافية في نظام التشغيل
كيفية تفعيل وظيفة إضافية كيفية إلغاء تفعيل وظيفة إضافية
كيفية تنفيذ أمر معين عند تثبيت وظيفة إضافية
كيفية تنفيذ أمر معين عند إلغاء تثبيت وظيفة إضافية
كيفية تنفيذ أمر معين عند فتح عرض تقديمي
كيفية تنفيذ أمر معين عند إغلاق عرض تقديمي
والمزيد من المهارات في فيجوال بيسك للتطبيقات VBA
ستجد بالملفات الكود وزر أمر ل عرض قوائم 2003 وزر أمر ل إخفاء قوائم 2003
اضغط هنا لتحميل الملفات المستعملة في عرض وإخفاء القوائم
أو من المرفقات
وهذا الفيديو يقوم بشرح الخطوات خطوة بخطوة step by step
ويسعدني تلقي إجابة حضراتكم عن كيفية عمل الملف الموجود في آخر الفيديو الخاص بعرض قوائم 2003 في تبويب جديد قبل تبويب الصفحة الرئيسية home
للمزيد زوروا ميكروسوفت إكسل Microsoft excel
ولا ينقصني سوى دعاؤكم لي ولأهلي وأحبابي -وأنتم منهم- بخيري الدنيا والآخرة.
ومشاركة الموضوع مع جميع أصدقائكم
لو بخل بها غيرك ما وصلت إليك
ولا تنس تقييم المنشور
Mas_ShowHide2003Menus.rar
الإخوة الأفاضل
السلام عليكم ورحمة الله وبركاته
برجاء المساعدة في إيجاد طريقة لتحويل نص الى رقم ( بناء على تعريف مسبق للرقم المقابل لكل حرف ) والأمر بصورة معكوسة ( عند كتابة الرقم يتم التحويل الى الحرف المقابل ) .
مثال :
أ = 12 , ت = 14 , ح = 17 , ف = 31
فإذا تم كتابة كلمة " تفاح " يكون الرقم في الخلية المقابلة " 14311217 " .
وإذا تم كتابة كلمة " أتحف " يكون الرقم في الخلية المقابلة " 12141731 " .
مرفق ملف لإيضاح أكثر بالأمثلة والملاحظات على كل مثال .
مع العلم أنني بحثت كثيراُ فلم أجد شئ .
فلم أجد أحد بعد الله ألجأ إليه بطلب المساعدة سوى حضراتكم .
وجزاكم الله كل خير ،،،
تحويل النص الى رقم.xlsx
إخوتي الفضلاء
مشروع قيد العمل احببت ان اشاركه معكم
حيث أعتقد أن مساعدة المستخدم في استخدام التطبيق بشكل صحيح مسألة مهمة و نتجنب من خلال ذلك كثيرا من المشاكل
كما انني أعتقد ان الاشكال المتكررة من التنبيهات كرسائل التنبيه ( صندوق الرسائل ) تصبح روتينية لدى المستخدم حتى لا يعود مكترثا بها
أجمع في جزء تفاعلي من النموذج منظومة التنبيه للأخطاء و رسائل النظام و الرسائل الموجهة للمستخدم بالاضافة للرسائل التوجيهية و المساعدة على الاستخدام في مكان واحد مع صور مساعدة و محددة لمستوى أهمية الرسالة ، تجلب انتباه المستخدم ، و هي بشكل جديد لافت للنظر و تقترن احيانا ( عند اللزوم ) بملفات صوتية .
تقدمت بشكل جيد بالتطبيق و مازال قيد التنفيذ ... و لكنها مرحلة أحببت ان أشارككم بها
مرفق ملف مصور
و للحديث بقية ... و الله من وراء القصد
Capture.rar
جرب الملف التالي
تنبيه : كانت ملاحظتك صحيحة اخ عمر هنا
والان يظهر استنتاج : انه لو عمل الموظف كل 50 ثانية خروج ولعدد 10 مرات اي بين كل حركة وحركة 50 ثانية لنفس الحالة خروج فان اجماليهم سيصبح اكثر من دقيقة وهنا سيتم حذف 9 سجلات لانه الفارق بين كل وسجل وماقبله اقل من دقيقة ! هل هذا الاستنتاج صحيح ؟ حيث تم الملف التالي حسب هذا الاستنتاج مع التنبيه بانه تم استبدال عملية الحذف بتأشير السجل بانه مهمل حيث لك الخيار باهمالها بالاستعلام او تحديدها ثم حذفها
تحياتي
Del_record_2 (1).mdb
السلام عليكم
استخدم مثل هذا للفرز باتجاهين
strFilter = ("SELECT * FROM tbll ORDER BY tbll.name1 ASC;")
strFilter2 = ("SELECT * FROM tbll ORDER BY tbll.name1 DESC;")
If chk.Value = 1 Then
DoCmd.OpenReport "rep1", acViewPreview, strFilter
Else
DoCmd.OpenReport "rep1", acViewPreview, strFilter2
End If
tbl1 يمثل الجدول مصدر البيانات و rep1 يمثل التقرير و chk حقل في النموذج لوضع قيمة كشرط
اخ عمر
حسب المناقشات السابقة كان المطلوب حذف سجلاتالفارق بينهم دقيقة فأقل وابقاء الاول فقط . وهذا تم بالكود اخ عمر وليس للاستعلام دخل فقط للتجميع .
الان لتاكيد الفهم : تريد حذف سجلات حدثت خلال دقيقة لنفس الموظف ونفس التاريخ ونفس الحالة والابقاء على السجل الاول فقط؟
ومسألة البطء خليها بعدين . خلينا نفهم المطلوب تمام ومن ثم التحسين .
تحياتي
بعد اذن استاذى سليم هل هذا هو ما تقصده؟
بمجرد كتابة الرقم فى العمود c من صفحة Index
سوف يقوم بفتح صفحة جديدة بالرقم الذى كتبته
بارك الله فيك وجزاك الله خيرا
STORE-ITEM salim (3)2.xlsm
الموضوع جيد و الى الامام
لكن عندي ملاحظتين ارجو تقبلها:
1- لا ضرورة لتحديد صفحة مجمد ثم نسخها (يكفي نسخها فقط)
2-في حال ادراج اسم موجود في العامود C او ان الخلية فارغة يحصل خطأ بالكود
لذلك لتفادي هذا الخطأ يمكن اضافة شرط على الكود وهو ان عدد مرات تكرار الاسم لا يتجاوز الواحد او ان الخلية غير فارغة
ليبدو الكود يهذا الشكل
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cont%, lr
If Target.Column = 3 Then
lr = Sheets(1).Range("c" & Rows.Count).End(xlUp).Rows.Value
cont = Application.CountIf(Range("c:c"), Target)
If cont > 1 Or IsEmpty(Target) Then GoTo Exit_Me
Sheets("Mohamed").Copy after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).name = lr
Sheets(Sheets.Count).[b1].Value = lr
End If
Exit_Me:
End Sub