المالكي333 قام بنشر أبريل 15, 2021 قام بنشر أبريل 15, 2021 السلام عليكم. في الملف المرفق يمكن استخراج رقم الشهر بواسطة الدالة month لكن حسب التقويم الميلادي فكيف نستخدم الدالة نفسها أو دالة أخرى تعطينا النتيجة نفسها مع التاريخ الهجري وليس الميلادي. أعتقد أن الأمر يحتاج إلى تعديل خصائص التاريخ لكنني لم أتمكن من الوصول لنتيجة. شكرا لكم مسبقا. Date.xlsx
حسين مامون قام بنشر أبريل 16, 2021 قام بنشر أبريل 16, 2021 يمكنك عمل هذا بهاذا الكود Sub DAT() Dim x, lr lr = Range("d" & Rows.Count).End(xlUp).Row For x = 2 To lr Range("g" & x) = Format(DateAdd("m", 0, (Range("d" & x))), "m") Next End Sub 1
المالكي333 قام بنشر أبريل 16, 2021 الكاتب قام بنشر أبريل 16, 2021 شكرا جزيلا أستاذ حسين على مشاركتك القيمة. ولكن للأسف لم يضبط معي الكود بالشكل المطلوب ففي حالة وجود الكود عندما أقوم بإدخال التاريخ الميلادي من جديد فإنه يجعل اختيار الشهر الميلادي value ويجعل اختيار الشهر الهجري يوم وليس شهر بالإضافة إلى أن الكود سيحتاج منا إلى زر أمر لتشغيل الكود في كل مرة فيا ليت إذا أمكن طريقة إخرى غير الكود أو نعتبر أن اختيار الشهر أو اليوم أو العام الهجري غير ممكن ضمن دوال أكسل كما هو ممكن في التاريخ الميلادي وفي هذه الحالة نبحث عن طريقة أخرى لتغيير السيناريو بأكلمه. أكرر لك شكري أستاذي الكريم.
حسين مامون قام بنشر أبريل 16, 2021 قام بنشر أبريل 16, 2021 هذا الملف فيه الكود عندي مظبوط يستخرج يوم من التاريخ ويمكن وضعه في حدث الشيت بدل زر امر Date.xlsm
المالكي333 قام بنشر أبريل 16, 2021 الكاتب قام بنشر أبريل 16, 2021 أشكرك أستاذ حسين وتحملنا شوية . أولا المطلوب فرز الشهر الهجري وليس اليوم أريد أن يتعرف الملف على شهر رمضان على سبيل المثال من خلال تحويل التقويم الميلادي إلى هجري حسب الدالة الموجودة في المصنف ثم البحث داخل الشهر الهجري وفرزه في الخلايا التي قمت أنت بتعليمها باللون الأصفر. لكن المشكلة التي واجهتني بعد إضافة الكود وحتى في الملف الذي تكرمت بإرساله آخر شيء أن التحويل من التاريخ الميلادي إلى الهجري في العمود D أصبح غير ممكن وبدلا من التحويل أصبح يضع لي التاريخ الميلادي الموجود في العمود B وكأني قلت له D=B ولم يعد هناك تفاعل مع الموديول الذي وضعناه للتحويل بين التاريخين وكذلك عندما أنقر على خصائص التاريخ لأختار نمط التاريخ بحيث يضع اليوم في البداية أو المنتصف أو في اليسار أو اليمين لا أجده يتفاعل مع أي تغيير. شكرا وتعبناك معانا لو تيسرت وإلا لا يكلف الله نفسا إلا وسعها. جزاك الله خيرا ومن يساهم في الحل.
حسين مامون قام بنشر أبريل 16, 2021 قام بنشر أبريل 16, 2021 جرب هذا الشيء Sub DAT() Dim x, lr, dt lr = Range("d" & Rows.Count).End(xlUp).Row VBA.Calendar = vbCalHijri For x = 2 To lr Range("g" & x) = Format(DateAdd("m", 0, (Range("b" & x))), "dd-mmm") Next VBA.Calendar = vbCalGreg End Sub
المالكي333 قام بنشر أبريل 16, 2021 الكاتب قام بنشر أبريل 16, 2021 شكرا لمشاركتك القيمة. ليس أمامنا إلا البحث عن حيلة أخرى إلى أن نصل إلى نتيجة قاطعة. تحياتي أستاذنا الكريم.
أفضل إجابة نزار سليمان عيد قام بنشر أبريل 17, 2021 أفضل إجابة قام بنشر أبريل 17, 2021 السلام عليكم فضلا جرب المرفق مع الشكر Date.xlsx
المالكي333 قام بنشر أبريل 17, 2021 الكاتب قام بنشر أبريل 17, 2021 شكرا جزيلا أستاذ نزار.. هذا هو المطلوب تماما لكن عندي مشكلة لم أستطع التوصل إليها فأنا أستقبل الملف منك أو من الأخ حسين بشكل صحيح لكن عندما أعدل في خلية التاريخ تتلخبط الأمور بشكل غريب. أنا قمت بعمل شبيه بما تلقيته منكما وأرسلته لكم في الموقع وظهر عندكم يعطي نتائج صحيحة لكن عند أي تغيير للتاريخ تبدأ الأخطاء فهو بدلا من أن يتفاعل مع دالة تحويل التاريخ من ميلادي إلى هجري ينقل لي التاريخ الميلادي بشحمه ولحمه دون تحويل بل ولا يتفاعل مع دالة Month التي تفاعل معها سابقا وأصبح يعطيني بدل التفاعل علامة الخطأ فاليو. قلت ربما يكون الخطأ في تنسيق التاريخ ودخلت على تنسيق التاريخ فلا أجده يتفاعل مع التغييرات التي أختارها وكأنه أمام نص أو رقم عادي وليس تاريخ. حاولت أن أعدل حتى إعدادات التاريخ في الجهاز نفسه فلم أتوصل إلى نتيجة. ويبدو أن الجهود لن تصل إلى نتيجة طالما أن الدوال تعطي نتائج صحيحة عندكم ولا تعطيني إياها بشكل صحيح!. الأوفيس عندي نسخة أصلية ولم أواجه أي مشاكل مماثلة مع مصنفات عدة أعمل عليها. إلى الله المشتكى. مزيد من التفاصيل في الصورة المرفقة.
نزار سليمان عيد قام بنشر أبريل 18, 2021 قام بنشر أبريل 18, 2021 صباح الخير ملفك الاصلي الذي بعثته في مشاركتك هو الذي اشتغلت عليه بدون تعديل في التنسيق لكن من خلال الصورة التي ارسلتها انت تتعامل مع التاريخ وفي طلبك لازم تختار مخصص ثم تضع هذا التنسيق [$-2060000]B2yyyy/mm/dd ه\ـ واي استفسار اعلمني او ارسل الملف كما هو يعمل عندك مع الشكر نزار
المالكي333 قام بنشر أبريل 18, 2021 الكاتب قام بنشر أبريل 18, 2021 شكرا أستاذ نزار.. مشكلة البرنامج أنه لا يتفاعل مع التنسيقات. يفترض عندما أختار أي تنسيق يظهر في خانة النموذج قبل أن أعتمده وأنقر على موافق. التطبيق لا يقبل التنسيقات بما في ذلك التنسيقات الأصلية الموجودة بداخله. هذا الذي يحيرني. بالنسبة للعمل الذي أريده خلاص انتهينا منه بالتخلي عن فكرة التحويل من تاريخ لتاريخ وبحثنا عن طريقة مختلفة كليا لجعل البرنامج يعطينا النتيجة المرغوبة. لكن سأظل أبحث عن سبب المشكلة الحالية سأبحث عن وقت وأنقل الملف إلى كمبيوتر آخر وأرى النتيجة لأن غالبية الملفات القديمة التي كانت تعمل مع دالة Month أصبحت بمجرد أي تغيير حتى بمجرد النقر على الدالة في شريط الصيغة والخروج منها يعطي نتيجة فاليو فهذا دليل أن هناك خلل إما في التطبيق ولا أرجحه وإما في جهاز الكمبيوتر والإعدادات الإقليمية تحديدا. وبإذن الله نصل إلى أسباب المشكلة. أشكر لكم جميعا كريم مساعدتكم.
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.