اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

التحكم في قيمة خلية محددة عند الفتح أو التغيير


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

اذا كانت الخلية خالية فسيتم تغيير القيمة الي

أوفيسنا

و اذا كان بها قيمة لن يحدث شيء

عند التغيير

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

 If Range("a1").Value = "" Then

   Range("a1").Value = "Officena"

 End If

End Sub

DefaultCellVal.zip

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

لكتابة الكود بطريقة أخري فى الجزء الخاص بأكواد ورقة العمل

و هنا يتم التحكم فى خلية فى الشيت الاول

ملاحظة : لا ستخدام me مع workbook يجب تعريف الشيت

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)


With Me.Sheets("sheet1").Range("a1")

  If .Value = "" Then

   .Value = "Officena"

  End If

End With


End Sub
و للتعامل مع الشيت و ليس مجلد العمل - من مشاركة للأخ امير فى موضوع آخر بتصرف و هنا يتم التعامل مع الشيت الثاني ، و يتم كتابة الكود فى الجزء الخاص باكواد الشيت الثاني
Private Sub Worksheet_Change(ByVal Target As Range)


With Me.Range("a1")

  If .Value = "" Then

   .Value = "Officena"

  End If

End With


End Sub

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

  • 2 weeks later...

فى سؤال عن كيفية عمل ذلك لعمود كامل ؟؟

أجاب الأخ أمير مشكورا بالكود التالي

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c As Variant

For Each c In Worksheets("Sheet1").Range("a:a")

   If c.Value = "" Then

      c.Value = "Officena"

     Exit For

   End If

  Next c

End Sub

و المثال المرفق يحوي الثلاث حالات :

خلية

و عمود

و مجموعة خلايا محددة ( مجال ) كل منها فى ورقة عمل منفصلة

ملاحظة : تم تعديل المثال و اضافة الطريقة الرابعة فى المشاركة القادمة اليه

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

  • 2 months later...

تم اضافة كود القيمة الافتراضية لعمود بطريقة أخري

و تم تطبيقه علي أول 3 أعمدة

Private Sub Worksheet_Change(ByVal Target As Range)


  

Dim c

  

If Target.Column = 1 Then

   c = Range("a" & Target.Row).Value

   If c = "" Then Range("a" & Target.Row).Value = "officena-1"

ElseIf Target.Column = 2 Then

   c = Range("b" & Target.Row).Value

   If c = "" Then Range("b" & Target.Row).Value = "officena-2"

ElseIf Target.Column = 3 Then

   c = Range("c" & Target.Row).Value

   If c = "" Then Range("c" & Target.Row).Value = "officena-3"

End If


End Sub

و هذا موجود فى الشيت الرابع Cols

DefaultCellVa4.rar

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

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

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

Important Information