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

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

قام بنشر

عندما نريد أن نطلب من أكسل أن يكتب لنا في خلية معينة تاريخ اليوم فإننا نضع له الدالة NOW() إلا أن هذه الدالة تقوم بتغيير التاريخ يوميا. لكن في حالة رغبتنا أن يقوم أكسل بكتابة تاريخ اليوم في خلية معينة ثم يقوم بتثبيت هذا التاريخ وعدم تغييره مثل أن نكتب تاريخ إيداع مبلغ معين في حساب البنك فمن غير المعقول أن يبقى تاريخ هذا الإيداع تاريخا متغيرا بل يجب أن يبقى ثابتا لمعرفة تاريخ الإيداع بالضبط. السؤال كيف نقوم بهذا التثبيت للتاريخ أو هل هناك دالة شبيهة لهذه الدالة من شأنها أن تقوم بكتابة التاريخ آليا وعدم تغييره يوميا ؟؟؟. شكرا للجميع.

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

السلام عليكم

تحتاج إلى لصق هذا الكود في الموديول الخاص بالصفحة :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

  If Target.Column = 1 Then

    Cells(Target.Row, 2) = Now()

  End If

End Sub

مع ملاحظة أنك تستطيع أن تعدل التالي :

1 هو رقم العمود الذي ستحدث فيه مبلغ الإيداع

2 هو رقم العمود الذي ستحفظ فيه الوقت .

وملاحظة أن الأعمدة تبدأ برقم 1 والمرمز بـ A .

لو سألت أين تضع الكود فسوف تفعل التالي :

من القائمة سوف تختار Tools ثم Macro ثم Visual Basic Editor

إذا الـ Project Explorer غير منشط فمن الـ View ستختاره وستظهر كل الصفحات على يسار الشاشة ، منها بالنقر المزدوج على الصفحة المطلوبة ثم ستقوم بلصق هذا الكود .

تحياتي .

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

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

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

السلام عليكم

وأنت كذلك أخي المالكي333 وحشتنا كتير :d .

أخي ولو أنه بسؤالك وردي خلطنا موضوعين في واحد ولكن لعيونك وليسامحنا محمد طاهر .

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

أتمنى لو توجد حلول أخرى من الأخوة الأفاضل .

تحياتي .

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

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

قام بنشر

الأخ أبو هادي: شكرا على تجاوبك السريع:

لقد أردت أن أربط خلية معينة بحيث عندما أكتب في تلك الخلية تحديدا يتم كتابة التاريخ مثبتا في الخلية التي بجانبها ولم أكن أريد أن أكتب في أي خلية في العمود1 لذلك فقد حاولت أن أعدل في الكود كما يلي

[Private Sub Worksheet_Change(ByVal Target As Excel.Range)

If Range("A3") = 1 Then

  Range("B3") = Now()

End If

End Sub

لا أعرف إن كانت طريقتي صحيحة في كتابة الكود لكنني قمت بتعديل العمود 1 إلى الخلية a3 وأعتقد أنني نجحت إلى حد ما لكنني لاحظت أن الخلية الأخرى تتجاوب في كتابة التاريخ عندما أكتب الرقم 1 في الخلية الأولى وأنا لا أريد أن أتقيد بالرقم1 فقط وإنما أريد أن أكتب أي شيء في الخلية ليكون ذلك كافيا لجعل الخلية الثانية تكتب التاريخ وتثبته في مكانه. أكرر لك شكري وتقديري.

قام بنشر

الأخ أبو طاهر

الأخ أبو هادي

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

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

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

Important Information