اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

كود لإظهاراعمدة محددة إعتمادا على تاريخ الويندوز وإخفاؤها مرة أخرى بنهاية الشهر المحدد


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

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

وبه نستعين

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

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

الموضوع

لديك عدة اعمدة مخفية متمثلة فى النطاق من DK : DE هذا على سبيل المثال

المطلوب بحول الله تعالى كود لإظهار هذة الاعمدة إعتمادا على تاريخ الويندوز ومن ثم إخفاؤها مرة أخرى بنهاية الشهر المحدد

مثال

الاعمدة من DI : DE  إظهار فى شهر يناير 

العمود DJ  إظهار فى شهر يونيو

العمود DK  إظهار فى شهر يوليو

تقبلوا وافر تقديرى واحترامى **** وجزاكم الله خيرا

التعديلات.rar

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

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

انسخ هذا الكود والصقه فى الموديول

Sub HidUnhde()
Dim dat As Byte
dat = Month(Now)
If dat = 1 Then
Columns("DI:DE").Hidden = False
End If
If dat = 6 Then
Columns("DK").Hidden = False
End If
If dat = 7 Then
Columns("DK").Hidden = False
End If
End Sub

 

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

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

بداية جزاكم الله خيرا وبارك فيكم أخى الفاضل الاستاذ // زيزو

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

بتغير تاريخ الويندوز دون اللجوء لعمل Button *** مثالا على ذلك

النطاق الاول من  DI : DE  يظل هذا النطاق مخفيا طوال العام بإستثناء شهر يناير من كل عام وهكذا لبقية الاعمدة المذكورة

بمعنى أنه فى يوم 1/1 من كل عام يتم إظهار تلك الاعمدة ومع نهاية شهر يناير 1/31 يتم إخفاؤها

ارجو من الله العلى القدير أن اكون وفقت فى توضيح الموضوع

تقبلوا وافر تقديرى واحترامى **** وجزاكم الله خيرا 

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

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

ضع هذا الكود فى حدث الصفحة

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = False
Dim dat As Byte
dat = Month(Now)
If dat = 1 Then
Columns("DI:DE").Hidden = False
Else
Columns("DI:DE").Hidden = True
End If
If dat = 6 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
If dat = 7 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
Application.ScreenUpdating = True
End Sub

 

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

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

بارك الله فيكم أخى الفاضل الاستاذ // زيزو

مجهود أكثر من رائع فجزاكم الله تعالى عنى خير الجزاء

هناك جزئية بسيطة  بشأن تنفيذ الكود *** لتنفيذ الكود هنا أضطر أن أضغط على أى خلية فارغة للتنفيذ سواء بالاظهار أو الاخفاء

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

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

مثالا على شهر يناير

من 1/ 1 /2017 إظهار تلقائى حتى نهاية الشهر 31/ 1 /2017  يتم الاخفاء تلقائيا وهكذا لبقية الشهور

أو بالاحرى من بداية شهر يناير " إظهار" حتى الوصول لنهاية الشهر " إخفاء"  وهكذا لبقية الشهور

تقبل وافر تقديرى واحترامى **** وجزاكم الله خيرا 

 

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

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

الكود صحيح للغرض المطلوب

ويمكنك وضع الكود السابق في حدث تنشيط الشيت

Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Dim dat As Byte
dat = Month(Now)
If dat = 1 Then
Columns("DI:DE").Hidden = False
Else
Columns("DI:DE").Hidden = True
End If
If dat = 6 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
If dat = 7 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
Application.ScreenUpdating = True
End Sub

كما هو مطلوب

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

الان, أ / محمد صالح said:

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

الكود صحيح للغرض المطلوب

ويمكنك وضع الكود السابق في حدث تنشيط الشيت


Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Dim dat As Byte
dat = Month(Now)
If dat = 1 Then
Columns("DI:DE").Hidden = False
Else
Columns("DI:DE").Hidden = True
End If
If dat = 6 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
If dat = 7 Then
Columns("DK").Hidden = False
Else
Columns("DK").Hidden = True
End If
Application.ScreenUpdating = True
End Sub

كما هو مطلوب

ولله زمان ياأبو صالح ليك وحشة كبيرة

ولكن يحتاج الامر هنا الدخول لمحررالاكواد لتنفيذ الكود كلما تتطلب الامر

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

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

الاستاذ الفاضل // محمد صالح

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

بداية جزاكم الله خيرا وبارك فيكم

اليوم هو 2017/4/26 مع تغير تاريخ الجهاز الى 2017/1/1 للتجربة

لايتم إظهار الاعمدة المحدد بطريقة تلقائية مع فتح الملف

أرجو إجراء هذة التجربة والافادة فربما يوجد لدىُ مشكلة *** أرجو الافادة

وافر تقديرى واحترامى **** وجزاكم الله خيرا

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

علشان حدث التنشيط يشتغل

ممكن تضغط على أي شيت تاني وبعدين تضغط على الشيت المطلوب

وزيادة في التأكيد

ممكن تحط الكود في حدث فتح المصنف

Private Sub Workbook_Open()

وإذا كان الملف أكثر من شيت يجب تحديد شيت العمل المطلوب 

With Worksheets("Sheet1")

ووضع الكود هنا ثم إنهاء التعامل مع الشيت المطلوب

 End With

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

أخى وحبيبى الاستاذ / محمد صالح

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

كفيت ووفيت *** كل شىء على مايرام

تقبلوا جميعا وافر احترامى وتقديرى *** وجزاكم الله خيرا

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

وفقكم الله لكل خير حبيبي في الله أبا عبد الرحمن

ويمكن الجمع بين الحدثين

في المصنف والشيت

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

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