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

ترحيل بيانات


إذهب إلى الإجابة الإجابة بواسطة محي الدين ابو البشر,

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

قام بنشر

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

للقيام بالوظيفة التالية:

ورقة العمل عندى بها ثلاثة أعمدة سابق وحالي وجملة

مطلوب شهريا ترحيل الاجمالي ليكون السابق

والحالي قيمته صفر للكتابه عليه

دون المساس بالمعادلات ودون المساس بورقة الأجمالي

شكراً للاهتمام والمساعدة

ترحيل بيانات من الاجمالي الى السابق.xls

قام بنشر

ما رأيك بهذا

Sub test()
    Dim ar As Range
    Dim sh As Worksheet
    Dim i As Long
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> "TOTAL" Then
Set sh = Sheets(i)
            For Each ar In sh.Cells(3, 3).Resize(26).SpecialCells(xlConstants).Areas
                ar.Offset(, -1) = ar.Value
                ar.Value = 0
            Next
        End If
    Next
End Sub

 

ترحيل بيانات من الاجمالي الى السابق.xls

  • Like 1
قام بنشر

السلام عليكم
جزاكم الله خيراً
حل رائع لكن لو أمكن نقل البيانات

من عمود الإجمالي لعمود السابق 

وليس من عمود الحالي للسابق

جزيل الشكر لخبراءنا

قام بنشر

استبدل بـ

Sub test()
    Dim ar, arl As Range
    Dim sh As Worksheet
    Dim i As Long
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> "TOTAL" Then
            Set sh = Sheets(i)
            For Each ar In sh.Cells(3, 4).Resize(26).SpecialCells(xlCellTypeFormulas, 1).Areas
                ar.Resize(ar.Count - 1).Offset(, -2) = ar.Value
                ar.Resize(ar.Count - 1).Offset(, -1) = 0
                Set arl = ar
            Next
            arl.Resize(1).Offset(arl.Count - 2).AutoFill Destination:=arl.Resize(1, 2).Offset(arl.Count - 2, -1)
        End If
    Next
End Sub

 

  • Like 1
قام بنشر

بالعودة للكود الأول

يمكن تعديله

Sub test()
    Dim ar As Range
    Dim sh As Worksheet
    Dim i As Long
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> "TOTAL" Then
            Set sh = Sheets(i)
            For Each ar In sh.Cells(3, 3).Resize(26).SpecialCells(xlConstants).Areas
                ar.Offset(, -1) = ar.Offset(, 1).Value
                ar.Value = 0
            Next
        End If
    Next
End Sub

 

  • Like 2
قام بنشر

الكود ممتاز جداً
محتاج أتعلم مكوناته وماذا يرمز إلي بتبسيط 
حتى إذا أحببت تغير أسماء الصفحات أو زيادة عدد الصفوف أكون على دراية بماذا أفعل

جزيل الشكر

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

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

Important Information