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

التحكم في ارتفاع الصف تلقائيا


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

بسم الله الرحمن الرحيم

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

وبعد هناك استفسارهل يمكن التحكم في ارتفاع الصف بشرط معين في خلية في ذلك الصف ، بصورة أوضح أريد أن يكون ارتفاع الصف 5 مثلا =15 إذا كانت الخلية c5<>0 وارتفاعه=0 إذاكانت قيمة الخليةc5=0 فهل هناك دالة معينة أوربما عن طريق كود معين أفيدونا جزاكم الله خير والعفو

رابط هذا التعليق
شارك

السلام عليكم

شهر مبارك وكل عام وانتم بخير

حسب ما فهمت والله اعلم

استخدم الكود هذا في حدث الورقة

اذاكانت قيمةالخلية C5 بدون معادلة


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("C5").Address Then

    If Target.Value = 0 Then

        Target.RowHeight = 0

    Else

        Target.RowHeight = 15

    End If

End If

If Target.Address = Range("A1").Address Then

    Range("C5").Value = Target.Value

End If

End Sub

في حالة ارتفاع الصف يساوي صفر ضع القيمة في الخلية A1 او اي خلية تختارها انت وغير عنوانها في الكود ========================================= اذاكانت الخلية C5 فيها معادلة استخدم الكود التالي
Private Sub Worksheet_Calculate()

With Range("C5")

    If .Value = 0 Then

        .RowHeight = 0

    Else

        .RowHeight = 15

    End If

End With

End Sub

رابط هذا التعليق
شارك

الاستاذ الكبير " خبور خير "

يا اخي القصة قصة ابداع وموهبة من الله

وفقك الله

عذرا ارفقت الاكواد بملف اكسل 2003 للتوضيح فقط

وجعلت الارتفاع 30 حتى يمكن تمييزه .

ياسر الحافظ " ابو الحارث "

التحكم في ارتفاع الصف.rar

رابط هذا التعليق
شارك

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

Target.RowHeight = 0
يصبح ارتفاع الصف 0 و هذا يؤدي الى اختفاء الصف و هذه مساهمة اخرى مني لاثراء الموضوع و هي في حدث
Worksheet_BeforeDoubleClick
الكود :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Set Target = ActiveCell

    If ActiveCell.Value = 0 Then

        Target.RowHeight = 15

    Else

        Target.RowHeight = 30

    End If

End Sub

رابط هذا التعليق
شارك

بسم الله الرحمن الرحيم

الأخ خبور خير شكرجزيلا وشكرا كذلك أخينا ياسر الحافظ وكذلك أخينا yahiaoui وفقكم الله جميعا ولكن عندي طلب آخر وهو كيف أجعل ذلك الأمر يتعلق بعدة صفوف ، طبعا المقصود من جعل قيمة الصف صفر هو إخفاؤه ولكن كيف أجعل الكود ينطبق على عدة صفوف طبعا مرتبطة بصوفوف من أوراق أخرى تمثل عددا من الطلاب بحيث هناك معادلة تشير إلى الخلية في العمود C من الصف 16 إلى 515 إذا كانت الخلية المرتبطة بها فارغة تكون قيمة الخلية صفر وبالتالي يتم إخفاء الصف وفي حالة أن الخلية المرتبطة بها غير فارغة فتكون نتيجة الخليةلا تساوي صفر وبالتالي يتم تغير ارتفاع الصف إلى 30 مثلا حتى يكون الصف ظاهرا .

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

رابط هذا التعليق
شارك

السلام عليكم

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


Private Sub Worksheet_Activate()

Dim MyRng As Range

Dim Col As Range

Range("C16:C515").EntireRow.Hidden = False

For Each Col In Range("C16:C515")

    If CStr(Col) = "" Or Col.Value = 0 Then

         If MyRng Is Nothing Then Set MyRng = Col Else _

            Set MyRng = Union(MyRng, Col)

    End If

Next

If Not MyRng Is Nothing Then MyRng.EntireRow.Hidden = True

End Sub

رابط هذا التعليق
شارك

بسم الله الرحمن الرحيم

الأخ العزيز / خبور خير جزاك الله خير وجعل ذلك في ميزان حسناتك

تم تطبيق الكود ، وأدى المطلوب

وفقك الله دائما لخدمة عباده

والعفو منكم

رابط هذا التعليق
شارك

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