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

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

قام بنشر

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

اخواني الاعزاء

 

ما هو الكود الذي يعمل الصفحة تذهب الى الخلية الفعالة عندما يتم فتح الاكسل

شكرا لكم وبارك الله فيكم

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

بعد ادن الأستاد المحترم عادل حنفي الكود المقترح يعمل  Selection  لكنه لا يعمل السكرول و لا  يدهب الى الخلية المقصودة

أقترح الكود البديل التالي

Private Sub Workbook_Open()
    Application.Goto Sheets("Sheet3").Range("H6"), True
End Sub

 

تم تعديل بواسطه جعفر الطريبق
  • Like 2
قام بنشر (معدل)

اخي aburajai

وبعد اذن اخي الحبيب ياسر خليل أبو البراء

جرب المرفق

سيكون القيد كالتالي

Private Sub Workbook_Open()
Sheets("sheet3").Activate
ActiveSheet.Range("H6").Select
End Sub

 

active.rar

اولا بارك الله فيك اخي 

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

انت حددت له الخلية H6  

لذلك قمت بتغيير الخلية واغلقت الملف ثم فتحته مرة اخرى فانه ذهب الى نفس الخلية اتش6

بينما اريد ان يقوم بالذهاب الى اخر خلية فعالة

ماذا لو تغيرت هذه الخلية الفعالة بشكل دائم

 

جزاك الله خيرا اخي  مقدما

 

===================================

شكرا كثيرا على المساعدة اخي ابو البراء المحترم

==================================

بارك الله فيك اخي جعفر على المساعدة 

لكن نفس المشكلة اريد عدم تحديد الخلية اتش6 فربما تتغير الخلية الفعالة وتصبح اتش115 مثلا

 

لذلك اريد يعمل سكرول فوري بعد ان يفتح ويذهب الى الخلية الاخيرة

 

 

تم تعديل بواسطه aburajai
تصحيح املائي
قام بنشر

السلام عليكم

بعد إذنكم إخواني

سيتم نقلك إلى آخر خلية في العمود A 

تفضل جرب المرفق

active1.rar

بارك الله فيك اخي ابو عيد

لا اريد تحديد العمود او الخلية ايضا كما ذكرت سابقا للاخوان

ارجو عمل سكرول يذهب الى اخر خلية فعالة  باي صف او عمود كان او اي خلية 

 

بوركت وجمعة مباركة عليك ابو عيد

قام بنشر

أخي الحبيب يرجى تغيير اسم الظهور للغة العربية

جرب الكود التالي في حدث المصنف

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Range("Z1") = ActiveCell.Address
    ThisWorkbook.Save
End Sub

Private Sub Workbook_Open()
    Dim S As String
    S = Range("Z1").Value
    Application.Goto Range(S), True
End Sub

 

Test.rar

  • Like 1
قام بنشر

السلام عليكم ورحمة الله
ضع الكود التالي في حدث الصفحة

Private Sub Workbook_Open()
ActiveCell.SpecialCells(xlLastCell).Select
End Sub

هذا الكود يمكنك من الانتقال الى اخر خلية فيها بيانات في الصفحة
كما يمكنك تحديد فتح صفحة معينة دون غيرها اكتب الكود التالي مع مراعاة كتابة اسم الصفحة الخاص بك

 

Private Sub Workbook_Open()
Sheets("add sheets name here").Activate
ActiveCell.SpecialCells(xlLastCell).Select
End Sub

كل الاحترام والتقدير

  • Like 1
قام بنشر

ممتاز أخي الحبيب سليم

أعتبر كودك هو الأفضل إلى الآن في هذا الموضوع

صراحةً لم يخطر ببالي الاعتماد على Selection وهي فكرة رائعة رائعة وأعجبتني كثيراً

تسلم وربنا يجازيك كل خير

أما صاحب الموضوع فيبدو أنه لم يعد مهتماً بالموضوع .. نلتمس له العذر

  • Like 1
قام بنشر

ممتاز أخي الحبيب سليم

أعتبر كودك هو الأفضل إلى الآن في هذا الموضوع

صراحةً لم يخطر ببالي الاعتماد على Selection وهي فكرة رائعة رائعة وأعجبتني كثيراً

تسلم وربنا يجازيك كل خير

أما صاحب الموضوع فيبدو أنه لم يعد مهتماً بالموضوع .. نلتمس له العذر

الله يبارك فيك اخي واستاذي ياسر الحبيب
بالنسبة للكود الذي قمت باستخدامه والاستاذ سليم
يقوم بالذهاب الى اخر خلية كانت محددة قبل اغلاق اكسل
ولكن ليست بالضرورة ان تكون اخر خلية فيها بيانات
اما الكود الذي قدمته في مشاركة ثانية
يقوم بتحديد اخر خلية فيها بيانات
واذا كنت راغبا بعمل سكرول لها
يمكنك تعديل الكود السابق الى

Application.Goto ActiveCell.SpecialCells(xlLastCell), True
تقبل تحياتي واحترامي استاذنا الكريم
مع وجود عيب بسيط نادرا ما يحصل
سوف اقوم بعمل تجربة لحلها

  • Like 1
قام بنشر

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

استاذي ياسر واستاذي سليم
الله يبارك فيكم

Private Sub Workbook_Open()
    Dim a As Range
    Set a = ActiveCell.SpecialCells(xlLastCell)
    If a = "" Then
        Application.Goto a.Offset(0, -1), True
    Else
        Application.Goto a, True
    End If
End Sub

 

 

قام بنشر

أخي الحبيب محمد نصري

الكود يعطي خطأ في هذا السطر

Application.Goto A.Offset(0, -1), True

أعتقد ان لب الموضوع هو فتح المصنف وعمل سكرول لآخر خلية كانت محددة قبل الإغلاق مباشرة بصرف النظر عن آخر خلية بها بيانات ..

تقبل تحياتي

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

Private Sub Workbook_Open() Dim a As Range Set a = ActiveCell.SpecialCells(xlLastCell) If a = "" Then If a <> Range("a1") Then Application.Goto a.Offset(0, -1), True Else Application.Goto a, True End If End If End Sub

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

أخي الحبيب محمد نصري

الكود يعطي خطأ في هذا السطر

Application.Goto A.Offset(0, -1), True

أعتقد ان لب الموضوع هو فتح المصنف وعمل سكرول لآخر خلية كانت محددة قبل الإغلاق مباشرة بصرف النظر عن آخر خلية بها بيانات ..

تقبل تحياتي

تفضل استاذي الفاضل
 

Private Sub Workbook_Open()
Dim a As Range
Set a = ActiveCell.SpecialCells(xlLastCell)

Private Sub Workbook_Open()
Dim a As Range
Set a = ActiveCell.SpecialCells(xlLastCell)
If a.Address = Range("a1").Address Then
     Application.Goto a, True
Else
     If a = "" Then
        r = a.Row
        c = a.End(xlToLeft).Column
                Application.Goto Cells(r, c), True

     Else

        Application.Goto a, True
     End If
End If
End Sub

 


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

 

 

اخي محمد

اعتقد انه يجب وضع شرط الا تكون الخلية المعنية في أول عامود (و اذ ا كانت كذلك شرط اخر)

لأن في هذه الخالة  

A.Offset(0, -1)

تعطينا خطأ

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

وان شاء الله يكون مافيه مشاكل
مع انه ممكن تبسيطه اكثر
بس الانترنت ينزع المزاج هههههههه
الله يعطيكم العافية واكرر شكري لك

  • Like 1
قام بنشر

أخي الحبيب محمد نصري

يعجبني فيك الإصرار وتكرار المحاولة .. أعتقد أن الكود الأخير يفي بالغرض (ويتعامل مع آخر خلية بها بيانات في ورقة العمل .. وليس مع آخر خلية تم تحديدها قبل الإغلاق)

 

ذكرت في كلامك أن "علما ان اكسل يفتح عندها مباشرة عند انتهاء العمل وعمل حفظ للملف"

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

هذه نقطة .. ناهيك أن المطلوب عمل سكرول بار للخلية المنشودة عند فتح المصنف ..

بارك الله فيك وجزاك الله خير الجزاء

قام بنشر

اخي محمد

اعتقد انه يجب وضع شرط الا تكون الخلية المعنية في أول عامود (و اذ ا كانت كذلك شرط اخر)

لأن في هذه الخالة  

A.Offset(0, -1)

تعطينا خطأ

بالضبط صحيح كلامك يجب ان نضع شرط  بأن لا تكون الخلية المحددة في العمود الاول شكرا لملاحظتك القيمة اشكرك

أخي الحبيب محمد نصري

يعجبني فيك الإصرار وتكرار المحاولة .. أعتقد أن الكود الأخير يفي بالغرض (ويتعامل مع آخر خلية بها بيانات في ورقة العمل .. وليس مع آخر خلية تم تحديدها قبل الإغلاق)

 

ذكرت في كلامك أن "علما ان اكسل يفتح عندها مباشرة عند انتهاء العمل وعمل حفظ للملف"

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

هذه نقطة .. ناهيك أن المطلوب عمل سكرول بار للخلية المنشودة عند فتح المصنف ..

بارك الله فيك وجزاك الله خير الجزاء

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

  • 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