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

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

قام بنشر

كلنا نعرف أنه عند أنشاء صفحات بعدد أيام الشهر في ملف أكسيل ثم وضع هذا الكود

Private Sub Workbook_Open()
Dim A
A = Day(Date)
Select Case A
Case Is = 1
Sheets("1").Select
Case Is = 2
Sheets("2").Select
Case Is = 3
Sheets("3").Select
Case Is = 4
Sheets("4").Select
Case Is = 5
Sheets("5").Select
Case Is = 6
Sheets("6").Select
Case Is = 7
Sheets("7").Select
Case Is = 8
Sheets("8").Select
Case Is = 9
Sheets("9").Select
Case Is = 10
Sheets("10").Select
Case Is = 11
Sheets("11").Select
Case Is = 12
Sheets("12").Select
End Select
End Sub
سيذهب الأكسيل مباشرة الي اليوم الحالي عند فتح الملف وأنه عندما نصمم ملف بشهور السنه ونضع هذا الكود
Private Sub Workbook_Open()
Dim A
A = Month(Date)
Select Case A
Case Is = 1
Sheets("يناير").Select
Case Is = 2
Sheets("فبراير").Select
Case Is = 3
Sheets("مارس").Select
Case Is = 4
Sheets("أبريل").Select
Case Is = 5
Sheets("مايو").Select
Case Is = 6
Sheets("يونيو").Select
Case Is = 7
Sheets("يوليو").Select
Case Is = 8
Sheets("أغسطس").Select
Case Is = 9
Sheets("سبتمبر").Select
Case Is = 10
Sheets("أكتوبر").Select
Case Is = 11
Sheets("نوفمبر").Select
Case Is = 12
Sheets("ديسمبر").Select
End Select
End Sub

سيذهب الملف تلقائياً الي الشهر الحالي عند فتح الملف

ولكن ..... إذا فرضنا أن الملف يحتوي على أسماء الشهور مدمجاً معها الأيام على سبيل المثال ( 1 يناير ) ( 2 يناير ) وهكذا الي أن نصل الي ( 31 ديسمبر ) أي بعدد أيام السنه

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

فلنفكر سوياً .... وشكراً :fff:

قام بنشر (معدل)

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

جرب هذا الكود :

Private Sub Workbook_Open()
Dim A As Integer
Dim B As Integer
B = Day(Date)
A = Month(Date)
Select Case A
Case Is = 1
Sheets("كانون الثاني " & B).Select
Case Is = 2
Sheets("شباط " & B).Select
Case Is = 3
Sheets("آذار " & B).Select
Case Is = 4
Sheets("نيسان " & B).Select
Case Is = 5
Sheets("أيار " & B).Select
Case Is = 6
Sheets("حزيران " & B).Select
Case Is = 7
Sheets("تموز " & B).Select
Case Is = 8
Sheets("آب " & B).Select
Case Is = 9
Sheets("أيلول " & B).Select
Case Is = 10
Sheets("تشرين الأول " & B).Select
Case Is = 11
Sheets("تشرين الثاني " & B).Select
Case Is = 12
Sheets("كانون الأول " & B).Select
End Select
End Sub

ولكن يجب كتابة التاريخ هكذا : كانون الأول 25

أي يجب كتابة اسم الشهر قبل رقم اليوم و الفصل بين الرقم و الاسم بمسافة مفردة واحدة

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

السلام عليكم

لو أردت أن تستخدم أسماء الأشهر كما في الإعدادات الإقليمية فيمكن اختصار الكود كالتالي :

1 - في حالة أسماء الصفحات كـ ( ديسمبر 26 )

Sheets(MonthName(Month(Date)) & " " & Day(Date)).Select
2 - في حالة أسماء الصفحات كـ ( 26 ديسمبر )
Sheets(Day(Date) & " " & MonthName(Month(Date))).Select

وإذا كانت دالة MonthName غير متوفرة في إصدار الأكسل لديكم يمكن تصميمها لو طلبت ذلك .

تحياتي .

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

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

Important Information