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

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

قام بنشر

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

كيف يمكن البحث عن أكبر قيمة في كل أوراق العمل ثم إضافة 1 في ورقة العمل الجديد في نفس الخلية

عندي ورقة عمل اسمها نقد

في الخلية D2 وضعت الكود التالي 

=TODAY()

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

=1&"/"&YEAR(D2)

عندما أريد إنشاء ورقة عمل جديدة أقوم بالضغط باليمين على ورقة العمل نقد ثم أختر "Move or copy" ثم "create a copy"  مع تحديد "Move to end"

أريد عند إنشاء ورقة عمل جديد يقوم بالبحث في كل أوراق العمل عن أكبر قيمة للخلية D3 ثم يقوم بإضافة رقم واحد في ورقة العمل الجديدة

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

فاتورة 2016.rar

قام بنشر

أخي الكريم بو عبد الله

جرب الكود التالي عله يفي بالغرض

Sub CreateNewSheet()
    Dim Ws As Worksheet, Y As Integer, X
    
    For Each Ws In ThisWorkbook.Worksheets
        X = Val(Mid(Ws.Range("D3").Formula, 2, 1))
        If Y > X Then Y = Y Else Y = X
    Next Ws
    
    Sheets("نقد").Copy After:=Sheets(Sheets.Count)
    ActiveSheet.Range("D3").Formula = Replace(ActiveSheet.Range("D3").Formula, Val(Mid(ActiveSheet.Range("D3").Formula, 2, 1)), Y + 1)
End Sub

تقبل تحياتي

  • Like 1
قام بنشر (معدل)
Sub salim()
    
    Dim My_date As Date
   
Sheet1.Copy After:=Sheets(Sheets.Count)

t = Sheets.Count
ActiveSheet.Name = Sheet1.Name & "" & t

ActiveSheet.Range("D2").Formula = "=today()"

 My_date = ActiveSheet.Range("d2").Value
 My_year = Year(My_date)
 
 ActiveSheet.Range("D3").Formula = "'" & t & "/" & My_year
End Sub

بعد إذن اخي وصديقي ياسر

هذا الكود  دون ذكر اسماء الصفحات تفادياً لمشاكل اللغة العربية

مع تحباتي

تم تعديل بواسطه سليم حاصبيا
  • Like 1
قام بنشر

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

بارك الله فيك على هذا التميز والإبداع

بالنسبة للكود خاصتك اعتمدت على عدد أوراق العمل في القيمة الجديدة أي إنك اعتمدت على Sheets.Count ..

وبالنسبة لأخونا أبو عبد الله طلب البحث عن أكبر قيمة في الخلية D3 أولاً ثم القيمة الجديدة تعتمد على أكبر قيمة مضافاً إليها واحد ..

  • Like 1
قام بنشر

أخي الكريم يوضع الكود في موديول جديد ..

لتنفيذ الكود اضغط  Alt + F8  من لوحة الفاتيح واختار اسم الماكرو CreateNewSheet ..

يمكنك معرفة البدايات من خلال الرابط التالي

بداية الطريق لإنقاذ الغريق

قام بنشر

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

Sub CreateNewSheet()
    Dim Ws As Worksheet, Sh As Worksheet, Str As String, Y As Integer, X
    
    Set Sh = Sheet1
    
    For Each Ws In ThisWorkbook.Worksheets
        Str = Ws.Range("D3").Formula
        X = Val(Mid(Str, 2, InStr(Str, "&") - 1))
        If Y > X Then Y = Y Else Y = X
    Next Ws
    
    Sh.Copy After:=Sheets(Sheets.Count)
    
    With ActiveSheet
        .Name = "نقد " & Y + 1
        .Range("D3").Formula = Replace(.Range("D3").Formula, Val(Mid(.Range("D3").Formula, 2, InStr(.Range("D3").Formula, "&") - 1)), Y + 1)
    End With
    
    Sh.Activate: Sh.Range("A1").Select
End Sub

 

 

فاتورة 2016.rar

  • Like 2

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