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

اكواد و اوامر ( VBA ) مفيدة


الردود الموصى بها

بسم الله الرحمن الرحيم

تحياتى الى الجميع

من الملاحظ انه توجد بعض اوامر ال ( VBA ) لانستخدمها بكثرة فى مشاركتنا

بل توجد الكثير من الاوامر التى لم تستخدم بالمرة فى معظم المنتديات العربية

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

Converting From Relative to Absolute

اليوم نبدأ بأمر يسمح بتحوبل العناوين من عنواوين مطلقة الى نسبية والعكس .

ولتتعرف كيف يعمل هذا الامر شاهد المرفق

Converting_From_Relative_to_Absolute.rar

تم تعديل بواسطه tameromar
  • Like 2
رابط هذا التعليق
شارك

السلام عليكم ورحمة الله ،

أحسنت أخي أستاذ تامر على هذه المشاركة ولاحرمنا المزيد ، واقعا مشاركة رائعة ! ! جائت في وقت الحاجة ، ولتوي اليوم طرحت سؤال عن هذا الموضوع إضغط هنا ،،

وكم كنا سابقا نعاني من تثبيت الخلايا النسبية إلى مطلقة يدويا ، أما حاليا فأصبح الأمر سهل للغاية كل ماعليك تحديد المدى ثم بضغطة زر تصبح جميع الخلايا مطلقة مع الرمز $ وقد كنا سابقا نستخدم البحث والإستبدال لإزالة رمز التثبيت $ لجعل خلايا المدى نسبية .

من الأعماق أقول مليون شكرااااا

تم تعديل بواسطه halwim
رابط هذا التعليق
شارك

Resize

يعمل هذا الامر على زيادة وتقليل حجم المدى المختار بعدد من الصفوف والاعمدة التى تحددها للزيادة او النقصان

شاهد المرفق لتتعرف على الامر

Resize.rar

رابط هذا التعليق
شارك

  • 1 month later...

تحياتى الى الجميع

كيف تحصل على

قائمة بيانات او عمود بيانات بدون تكرار

بخطوات بسيطة

الشرح بالمرفقات

_______________________.rar

رابط هذا التعليق
شارك

السلام عليكم ورحمة الله

بدأ اطلاق اكواد مفيدة من منصة اوفيسنا ابتكار ابداع اكواد حصرية

هو دا الكلام وهو ذا مخرج الروائع عمر الحسينى فله منا التحية والتقدير

رابط هذا التعليق
شارك

الاخوة الكرام

الاخ خالد نور

الاخ lord

تحياتى لكم جميعا

شكرا لكم ولكنه اكثر مما استحق

والفضل الاكبر يعود الى استاذى على السحيب لعله بخير إن شاء الله ويعود ينور المنتدى من جديد .

نتقابل فى الخير إن شاء الله فى اللقاء القادم مع مجموعة التعامل مع الاوراق :

( فهرس الاوراق / تغير اسم الورقة تلقائيا / اضافة ورقة جديدة فى الى نهاية الاوراق /منع ادراج ورقة جديدة ...الخ)

تحياتى لكم

رابط هذا التعليق
شارك

  • 2 weeks later...

السلام عليكم ورحمة الله وبركاتة

تحياتى الى الجميع

نواصل معا تميز منتدى الاكسيل فى اوفيسنا عن سائر المنتديات العربية

حل مشكلة اعتراض حماية اورق الملف لتنفيذ الماكرو

هو الحل النهائى لهذه المشكلة والتى لايأتى بعده حلول نهائيا .

كما نعرف جميعا انه عند حماية اوراق الملف وعند تنفيذ ماكرو به بعض الاوامر يتم اعتراض تنفيذها نتيجة الحماية

ودائما الحل فى الدواء المكرر والمعاد دائما وهو رفع الحماية فى بداية عمل الماكرو ثم وضعها مرة اخرى فى نهايتة

ولكن الحل هنا فى منتدى الاكسيل لاول مرة على مستوى المنتديات .

وعلى سبيل المثال لا الحصر لهذه الاوامر التى تسبب توقف عمل الماكرو

ادراج او الغاء صفوف او اعمدة

تغير لون الخلية او لون الخط

والكثير من الاحداث الاخرى التى تتوقف بسبب الحماية .

فيلجأ البعض منا مما له دراية بالاكواد بعمل عدد 2 ماكرو منفصلين

الاول يعمل على الغاء الحماية

والثانى يعمل على تنفيذ الحماية

ثم عند تصميم اى ماكرو يقوم بوضع اسم الماكرو الاول فى بداية المكرو الذى يقوم بتصميمة

ويضع اسم الماكرو الثانى فى نهاية الماكرو الذى يقوم بتصميمة

بمعنى فى حالة اعترض الحماية يجب رفع الحماية فى بدية الماكرو

ثم اعادة وضع الحماية مرة اخرى فى نهاية هذا الماكرو

حتى يتم تنفيذ هذا الماكرو بدون اعتراض .

ولكن الاكسل وفر لنا الكثير والكثير ولكن العقبة هى عدم الوصول الى هذه المعرفة

وكثرت مشاكل اعتراض الحماية لتنفيذ الماكرو الذى يحتوى على بعض الاوامر التى اشرت اليها فى بداية الحديث

ولكن توجد اضافة لامر الحماية لم الحظ ان احدا يقوم بأستخدامها وهى الامر

UserInterfaceOnly:=True
التى توضع فى امر الحماية ويمكن بذلك تنفيذ اى ماكرو بدون اعتراض مسيو اكسيل وبخصوص هذا الامر عند حفظ الملف تفرض الحماية كاملة وينهى عمل هذا الاستثناء وعليه عند فتح الملف يجب الاعلان عن ان الحماية مشمولة بهذا الامر ولذلك يجب ادراج كود الحماية بأحد هاتين الطريقتين : اولا : اما عن طريق ماكرو التنفيذ التلقائى عند الفتح الذى ينفذ اى اوامر مدرجة به عند فتح الملف
Sub AUTO_OPEN()
ثانيا : عن طريق حدث فتح الملف الاتوماتيكى الذى ينفذ اى اوامر مدرجة به عند فتح الملف
Private Sub Workbook_Open()
فأذا اردنا ان يكون كود الحماية فى ماكرو الفتح (Sub AUTO_OPEN) يكون الماكرو على هذه الصورة بفرض ان كلمة السر هى (123)
Sub AUTO_OPEN()
MyPassword = "123"
For Each MySheet In ActiveWorkbook.Sheets
    MySheet.Protect _
        Password:=MyPassword, _
        DrawingObjects:=False, _
        Contents:=True, _
        Scenarios:=True, _
        UserInterfaceOnly:=True
Next MySheet
End Sub
اما اذا اراد المترسين بالاكواد بوضع كود الحماية فى حدث فتح الملف يكون على الشكل التالى بفرض ان كلمة السر هى (123)
Private Sub Workbook_Open()
MyPassword = "123"
For Each MySheet In ActiveWorkbook.Sheets
    MySheet.Protect _
        Password:=MyPassword, _
        DrawingObjects:=False, _
        Contents:=True, _
        Scenarios:=True, _
        UserInterfaceOnly:=True
Next MySheet
End Sub

بذلك يمكن تنفيذ اى ماكرو بدون اعترض

وتتجنب تكرار فك الحماية فى بداية الماكرو ثم اعادتها مرة اخرى فى نهاية الماكرو

مع تحياتى فى استخدام الاوامر التى لم نتطرق اليها قبل ذلك لاثراء معلوماتنا ومنتدانا بكنوز الاكسيل

تم تعديل بواسطه أبو تامر
  • Like 1
رابط هذا التعليق
شارك

  • 2 weeks later...
  • 1 month later...

الأستاذ الكبير ابو تامر

:clapping::cool2::clapping:

السلام عليكم

مبدع جدا جداا

وجزاك الله خيرا

وسبحان الذي علمك اكثر مماعلمنا

((وانما يخشى الله من عباده العلماء))

جعل الله هذا في ميزان حسناتك

رابط هذا التعليق
شارك

السلام عليكم...

الأستاذ الكبير ابو تامر ...

عذرا شديدا على عدم متابعتي لهذه الإبداعات الجميلة ولكن سؤالي وهو متأخر بعض الشيئ وهو حول موضوع قائمة بيانات او عمود بيانات بدون تكرار بخطوات بسيطة

فحسب مافهمت إذا وضعنا مثلا إسما في قائمة البيانات المفروض إنه لا يتكرر وهذا موجود لكن عند وضع الإسم بشكل أخر فللأسف فإنه يتكرر مثلا أحمد و احمد وعلي وعلى وشكرا .

رابط هذا التعليق
شارك

عليكم السلام ورحمة الله وبركاتة

الاخ كريم

تحياتى لك اخى

كنت من فترة اود ان اشكرك وها هى المناسبة اتيه

اولا اشكرك اخى على متابعتك الجيدة

ثانيا وهو شئ عظيم ورائع مساهمتك فى مساعدة الاخوة بخلق سمح

فشكرا لك اخى جزيل الشكر وجعله الله فى ميزان اعمالك

اخى اذا كنت تقص انه عند وجود الاسمين ( احمد / أحمد ) بفارق الهمزة فى الاسم الثانى

ان يعمل الكود على اعتبارهم اسمين متكررين ويستخرج احدهم فقط

فأقول لك اخى

فى حياتنا العامة او الدارجة قد نعتبر ان الاسمين هما اسم لشخص واحد

ولكن مع الكومبيوتر الامر يختلف فى الاتى

وفى الحقيقة ليس الكومبيوتر هو سبب الخلاف

ولكنه تصميم جدول الاحرف الذى يعمل من خلالة الكومبيوتر

فجدول الحروف اسكى مصمم على اساس ان الالف بدون الهمزة العلوية هو حرف مختلف عن الالف بالهمزة العلوية

وعلى ذلك يعتبر احمد بدون الهمزة كلمة مختلفة عن احمد بالهمزة العلوية

وباستخدام الدالة (CODE) لأظهار كود الالف بدون الهمزة والالف بالهمزة

سنجد ان كود الالف بدون الهمزة هو 199

و سنجد ان كود الالف بالهمزة هو 195

وهذا معناه انهما حرفان مختلغان وليس حرف واحد

وعلى ذلك يعتبر احمد بدون الهمزة كلمة مختلفة عن احمد بالهمزة العلوية

ارجو ان اكون قد وفقت فى توضيحى

رابط هذا التعليق
شارك

السلام عليكم...

أستاذي الكبير أبو تامر...

أشكرك في البداية على هذا الكلام الجميل وبالنسبة للمساعدة فأدعوا الله عز وجل أن أكون قد وفقت في تقديم ولو مساعدة بسيطة لإي شخص يكون محتاج إلى مساعدة .

أما بالنسبة لهذه المشكلة فأن أعتقد من وجهت نظري المتواضعة إنه لا توجد مشكلة في الإكسل من غير حل فعن طريقك إستاذي الفاضل أو عن طريق أحد الإخوان أو يمكن عن طريقي يمكن حل هذه المشكلة . فالحل البديل لهذه المشكلة هو إستخدام رقم لكل إسم وهو يفي بالغرض ولكن لم يحل المشكلة . حتى يمكن من خلال التدقيق الإملائي مثلا حصر هذه الإسماء لكن إذا جاءك شخص إسمه مثلا: أحمد محمد علي إبراهيم وكتبته بهذه الطريقة ثم بعد فترة كتبت نفس الإسم بطريقة أخرى مثلا : أحمد محمد إبراهيم . فسوف يقبل منك مع إلتزامك التام بجميع قواعد التدقيق الإملائي .

وأخيرا أعتذر على الإطالة لكن الموضوع هام وأرجوا من الجميع المساعدة لحل هذه المشكلة والتي يحتاج إلى حلها الكثيرين وشكرا.

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information