ساختن تابع جديد : جمع زدن سلولهاي همرنگ بوسيله vb بدون ستونهاي كمكي

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • misammisam
    مدير تالار حسابداری و اکسل

    • 2014/04/04
    • 892
    • 64.00

    آموزشی ساختن تابع جديد : جمع زدن سلولهاي همرنگ بوسيله vb بدون ستونهاي كمكي

    باسلام
    بعضي وقتها طبق شكل زير ما تعدادي داده داريم كه با رنگهاي مشخص طبقه بندي شدن و حالا احتياج داريم روي اين اطلاعات ، عملياتهايي مثل جمع زدن انجام بديم ، البته با شرط رنگ خود سلول كه داده درش قرار داره .
    مثلا جمع سلولهاي فقط قرمز رنگ رو احتياج داريم .


    براي اين كار يك ماژول در قسمت vb ساخته و كد زير رو داخلش مينويسيم .
    کد PHP:
    Function SumByColor(CellColor As Range, rRange As Range)
    Dim cSum As Long
    Dim ColIndex 
    As Integer
    ColIndex 
    = CellColor.Interior.ColorIndex
    For Each cl In rRange
      
    If cl.Interior.ColorIndex = ColIndex Then
        cSum 
    = WorksheetFunction.Sum(cl, cSum)
      
    End If
    Next cl
    SumByColor 
    = cSum
    End 
    Function 
    حالا وارد خود محيط اكسل ميشويم ، ميبينيد كه يك تابع به اسم SumByColor در قسمت توابع اضافه شده ، اين تابع داراي دو قسمت است ، قسمت اول CellColor كه يك سلول حاوي رنگ مورد نظر انتخاب و قسمت دوم RRange كه كل محدوده مورد نظر جهت جمع زدن انتخاب ميشود .
    دقت كنيد در صورتي كه رنگ سلول مرجع يا سلولهاي محدوده كلي رو عوض كرديد ، روي سلول فرمول دابل كليك كنيد و اينتر رو بزنيد كه فرمول رفرش بشود و محاسبات اعمال بگردد .
    فایل های پیوست شده
    [CENTER][SIGPIC][/SIGPIC]
    [/CENTER]
    [CENTER][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][INDENT]
    [CENTER][SIZE=3][URL="https://affstat.adro.co/click/adf04053-f8a6-439a-9ac4-e6a7e6f4b455"][B]اينجا كليك نكنيا ![/B][/URL][/SIZE]
    [/CENTER]
    [/INDENT]

    [/FONT][/FONT][/FONT][/FONT][/FONT]
    [/CENTER]
  • arash20031382
    • 2010/06/04
    • 3

    #2
    سلام
    آیا فرمولی برای میانگین گرفتن از سلول های همرنگ وجود دارد ؟

    کامنت

    • misammisam
      مدير تالار حسابداری و اکسل

      • 2014/04/04
      • 892
      • 64.00

      #3
      نوشته اصلی توسط arash20031382
      سلام
      آیا فرمولی برای میانگین گرفتن از سلول های همرنگ وجود دارد ؟
      همين فرمولو تغيير بدي ميتوني هر تابعي كه خواستي بنويسي ، جمع ، ميانگين و غيره
      اين قسمتو بايد عوض كنيد
      کد PHP:
      cSum = WorksheetFunction.Sum(cl, cSum) 
      [CENTER][SIGPIC][/SIGPIC]
      [/CENTER]
      [CENTER][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][FONT=Tahoma][INDENT]
      [CENTER][SIZE=3][URL="https://affstat.adro.co/click/adf04053-f8a6-439a-9ac4-e6a7e6f4b455"][B]اينجا كليك نكنيا ![/B][/URL][/SIZE]
      [/CENTER]
      [/INDENT]

      [/FONT][/FONT][/FONT][/FONT][/FONT]
      [/CENTER]

      کامنت

      • سیر
        • 2014/11/04
        • 3

        #4
        عالی بود . مرسی

        کامنت

        • kazem1359

          • 2018/06/08
          • 331
          • 39.00

          #5
          سلام ایا در اموزش بیان شده راهی وجود داره که اگر رنگ سلول تغییر کرد جمع هم به صورت خودکار تغییر کنه و نیازی به رفرش سلول دارای فرمول نباشه؟

          کامنت

          چند لحظه..