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

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

قام بنشر

السلام عليكم ورحمة الله وبركاته برجاء مساعدتي عايز اختار تاريخ من الفورم وبالضغط على الزر يقوم بإضافة جميع ايام الشهر بالاسماء 

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

WhatsApp Image 2024-08-14 at 10.12.55_bce4f325.jpg

db11.rar

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

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

بسبب بعدي عن الكمبيوتر ، هذه مشاركة متصورة . مفترضاً ان لديك العناصر التالية:-

1. كومبوبوكس مكون من عامودين الأول ترقيم من 1 الى 12 ومقابلها اسماء الأشهر حسبما تريد وترغب .

2. مربع نص أو كومبوبوكس لكتابة السنة كمثال ( 2024 , 2025 , 2026 .... إلخ )

3. مربعات نص عدد 31 ويتم تسميتها ترتيباً كما يلي ( txday1 ,txday2, txday3 .... txday31 ) .

4. زر لتنفيذ المطلوب يحتوي الكود التالي :-

private sub btn_getdays_click()
dim i as integer
dim monthnumber as integer
dim yearnumber as integer
dim daydate as date
dim totaldays as integer
dim dayname as string
dim txtcontrol as textbox
if isnull(me.comboboxname) or isnull(me.txtyears) then
msgbox "يرجى التأكد من اختيار الشهر أو السنة", , ""
exit sub
end if
monthnumber = me.comboboxname.column(0)
yearnumber = me.txtyears.value
totaldays = day(dateserial(yearnumber, monthnumber + 1, 0))
for i = 1 to 31
set txtcontrol = me.controls("txday" & i)
if i <= totaldays then
daydate = dateserial(yearnumber, monthnumber, i)
dayname = format(daydate, "dddd")
txtcontrol.value = i & " / " & dayname
else
txtcontrol.value = null
end if
next i
end sub

 

لم أقم بالتنفيذ على الملف المرفق لعدم وجودي عند الكمبيوتر 😅 .

تم تعديل بواسطه Foksh
تصحيح خطأ في الكود
قام بنشر (معدل)
3 ساعات مضت, Foksh said:

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

بسبب بعدي عن الكمبيوتر ، هذه مشاركة متصورة . مفترضاً ان لديك العناصر التالية:-

1. كومبوبوكس مكون من عامودين الأول ترقيم من 1 الى 12 ومقابلها اسماء الأشهر حسبما تريد وترغب .

2. مربع نص أو كومبوبوكس لكتابة السنة كمثال ( 2024 , 2025 , 2026 .... إلخ )

3. مربعات نص عدد 31 ويتم تسميتها ترتيباً كما يلي ( txday1 ,txday2, txday3 .... txday31 ) .

4. زر لتنفيذ المطلوب يحتوي الكود التالي :-

private sub btn_getdays_click()
dim i as integer
dim monthnumber as integer
dim yearnumber as integer
dim daydate as date
dim totaldays as integer
dim dayname as string
dim txtcontrol as textbox
if isnull(me.comboboxname) or isnull(me.txtyears) then
msgbox "يرجى التأكد من اختيار الشهر أو السنة", , ""
exit sub
end if
monthnumber = me.comboboxname.column(0)
yearnumber = me.txtyears.value
totaldays = day(dateserial(yearnumber, monthnumber + 1, 0))
for i = 1 to 31
set txtcontrol = me.controls("txday" & i)
if i <= totaldays then
daydate = dateserial(yearnumber, monthnumber, i)
dayname = format(daydate, "dddd")
txtcontrol.value = i & " / " & dayname
else
txtcontrol.value = null
end if
next i
end sub

 

لم أقم بالتنفيذ على الملف المرفق لعدم وجودي عند الكمبيوتر 😅 .

اخي foksh يا ريت لو تقدر تطبقها على المثال لما تكون فاضي وبجانب كمبيوتر اكون شاكر ليك

تم تعديل بواسطه ahmedabuzena
  • أفضل إجابة
قام بنشر

مشاركة مع احبتي

Function DaysInMonth(Month As Integer, Year As Integer)
DaysInMonth = DateSerial(Year, Month + 1, 1) - DateSerial(Year, Month, 1)
End Function
Function InsertDaysInMonth()
Dim dx As Date
Dim rs As Recordset
Dim i As Integer, r As Integer, yerthx As Integer, mnthx As Integer, dythx As Integer
yerthx = Year(Me.MonthName)
mnthx = Month(Me.MonthName)
r = DaysInMonth(mnthx, yerthx)
Set rs = CurrentDb.OpenRecordset("XDay")
For i = 1 To r
rs.AddNew
dx = DateSerial(yerthx, mnthx, i)
rs!Id_month = mnthx
rs!dailyDate = dx
rs.Update
Next
XDaySubform.Requery
End Function

 

db12.rar

  • Like 1
قام بنشر

الاول الصورة لم يتم تحميلها

وبعد ان اتضحت الصورة بعد تحميلها 

هذا هو المرفق بالتمام على طريقة استاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @ابوخليل :fff:

db12.mdb

قام بنشر
7 ساعات مضت, ابو جودي said:

الاول الصورة لم يتم تحميلها

وبعد ان اتضحت الصورة بعد تحميلها 

هذا هو المرفق بالتمام على طريقة استاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @ابوخليل :fff:

db12.mdb 408 kB · 4 downloads

جميل ابا جودي 

كنت اتمنى احد الخبراء يعلق على مشاركتي من اجل القي القبض عليه :wub: .. واللي وقع في شبكتي هو حبيبي ابو جودي

طبعا استفسار

السطر :

i = i + 1 - 1

انا لا اعرف ليه وضعت -1 ( ناقص واحد ) هي جت كذا .. جربت وضبطت

المنطق يقول  i = i + 1  انه يزيد واحد في كل دورة .. ولكني لاحظت انه يزيد 2 

ممكن تفسير هذا ؟

  • Haha 1
قام بنشر

 

25 دقائق مضت, ابوخليل said:

نت اتمنى احد الخبراء يعلق على مشاركتي من اجل القي القبض عليه :wub: .. واللي وقع في شبكتي هو حبيبي ابو جودي

احبكم الله الذى احببتمونا فيه ولأجله استاذى الجليل ومعلمى القدير و والدى الحبيب :fff::wub:

والاجابــــة كالأتى

الحلقة

For i = 1 To r

تقوم بزيادة i تلقائيًا في كل تكرار

لذلك عندما تضيف السطر i = i + 1 داخل الحلقة فإنه بذلك  نقوم بزيادة i مرتين

الزيادة التلقائية بواسطة الحلقة >>--> الحلقة تزيد i بمقدار 1 في كل تكرار

الزيادة اليدوية >>--> في السطر i = i + 1 تقوم بزيادة i مرة أخرى

علشان كده الزيادة تكون بمقدار 2 

وعلشان كده الأفضل يكون الكود بالشكل 


 

    For i = 1 To r
        rs.AddNew
            dx = DateSerial(yerthx, mnthx, i)
            rs!Id_month = mnthx
            rs!dailyDate = dx
        rs.Update
    Next
    XDaySubform.Requery

 

 

ليكون المرفق بشكلة النهائى كالاتى 

 

 

db12.mdb

قام بنشر
26 دقائق مضت, ابوخليل said:

يعني انا اقحمتها ورجعت الغيتها في السطر نفسه :wallbash:

 

نعم :yes:

26 دقائق مضت, ابوخليل said:

الف شكر :fff:

لكم كل الشكر استاذى :fff:

اعجبنى هذا الامتحان المفاجئ :biggrin2:

قام بنشر

لا لو التاريخ اتنفذ لازم تحذفه مش تعدله 

أما إذا أردت إضافة سجل جديد تقوم بإضافة السجل اولا ثم كتابة التاريخ الجديد

قام بنشر
7 دقائق مضت, ابو جودي said:

لا لو التاريخ اتنفذ لازم تحذفه مش تعدله 

أما إذا أردت إضافة سجل جديد تقوم بإضافة السجل اولا ثم كتابة التاريخ الجديد

تمام جزاكم الله خيرا

  • Thanks 1
قام بنشر
2 ساعات مضت, ابو جودي said:

لا لو التاريخ اتنفذ لازم تحذفه مش تعدله 

أما إذا أردت إضافة سجل جديد تقوم بإضافة السجل اولا ثم كتابة التاريخ الجديد

هو مش ممكن تعديل الكود بدل من اني ادخل سجل جديد في كل مرة،

اريد ان اتعامل مع اول سجل فقط بان أغير التاريخ يتم تغيير الايام واكون قادر اطبع التقرير

ده عامل زي كارت حضور وغياب لكل عامل محتاج اني اطبع هذا الكارت بالشهر الجديد وأيام هذا الشهر 

 

قام بنشر
12 دقائق مضت, ahmedabuzena said:

هو مش ممكن تعديل الكود بدل من اني ادخل سجل جديد في كل مرة،

اريد ان اتعامل مع اول سجل فقط بان أغير التاريخ يتم تغيير الايام واكون قادر اطبع التقرير

ده عامل زي كارت حضور وغياب لكل عامل محتاج اني اطبع هذا الكارت بالشهر الجديد وأيام هذا الشهر

بالطريقة دى انت مش هتحتفظ بالبيانات ؟؟
متأكد انك عاوز كده ؟؟؟

قام بنشر
6 ساعات مضت, ابو جودي said:

بالطريقة دى انت مش هتحتفظ بالبيانات ؟؟
متأكد انك عاوز كده ؟؟؟

مظبوط أنا عايزة زي ملف الاكسيل دة مجرد اختار الشهر فيتغير بكل ايام الشهر واطبع التقرير 

SHADY TIME TABLE 1_V4.xls

  • Confused 1
قام بنشر
1 دقيقه مضت, ahmedabuzena said:

أنا عايزة

احمد و وبتقول عايزة  :eek2: يا مثبت العقل يارب

ماشى ما علينا

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

 

قام بنشر
6 ساعات مضت, ابو جودي said:

احمد و وبتقول عايزة  :eek2: يا مثبت العقل يارب

ماشى ما علينا

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

 

هههه غلطة موبايل لا تؤاخذنا

5 ساعات مضت, ابو جودي said:

قاعدة البيانات بعد التعديل 

 

db13.mdb 408 kB · 3 downloads

تسلم جزاكم الله خيرا

قام بنشر

يعنى الحمد الحمد لله رجل

والله خوفت اقول لك اتفضل وابعت لك ورده :fff:

لحسن تكون بنت ونقع فى المحظور

هههههه

جزانا الله وإياكم خير الجزاء إن شاء الله 

المهم تكون وجدت ضالتك

 

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