مشکل در تابع sumif در vba

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • الهام-6767

    • 2018/06/12
    • 11
    • 26.00

    [حل شده] مشکل در تابع sumif در vba

    وقت بخیر
    با استفاده از app میخواهم جمع شرطی رو کدنویسی کنم و لی متاسفانه خطا میده و نمیدونم علت چیه؟
    خطای overflow
    کد:
    Sub sum()
    Dim d As Integer
    Dim n As Integer
    Dim sum As Integer
    
    For n = 25 To 28
    d = Sheet4.Cells(n, 1).Value
    sum = Application.WorksheetFunction.SumIf(Sheet3.Range("n:n"), d, Sheet3.Range("j:j"))
    
    Sheet4.Cells(n, 2).Value = sum
    Next
    
    End Sub
    Last edited by Amir Ghasemiyan; 2018/06/19, 13:54. دلیل: قرار دادن كدها داخل تگ كد
  • rasools13

    • 2017/01/20
    • 360
    • 80.00

    #2
    سلام
    احتمال زیاد اعداد مورد استفاده در فایل اکسل شما خیلی بزرگ (بیش از ۵ رقم) هستند و این مقدار برای Integer زیاد بوده و خطای overflow رخ می دهد
    برای رفع آن متغییرهای d و sum رو از نوع Double قرار دهید.
    کد PHP:

    Sub sum
    ()
    Dim dsum As Double
    Dim n 
    As Integer

    For 25 To 28 Step 1
        d 
    Sheet4.Cells(n1).Value
        sum 
    Application.WorksheetFunction.SumIf(Sheet3.Range("n:n"), dSheet3.Range("j:j"))
        
    Sheet4.Cells(n2).Value sum
    Next

    End Sub 
    [CENTER][B]بهترین راه ذخیره زمان(یادگیری)،،حل مشکلات دیگران است
    [COLOR=#0000ff]مشکلات دیگران، روزی مشکلات ما هم خواهد شد[/COLOR][/B][COLOR=#ff0000][B][FONT=arial][/FONT][/B][/COLOR]
    [/CENTER]

    کامنت

    • الهام-6767

      • 2018/06/12
      • 11
      • 26.00

      #3
      خیلی ممنونم حل شد.ممنونم از راهنماییتون

      کامنت

      • Amir Ghasemiyan

        • 2013/09/20
        • 4595
        • 100.00

        #4
        نوشته اصلی توسط الهام-6767
        خیلی ممنونم حل شد.ممنونم از راهنماییتون
        اگر پاسخ سوالتون رو دريافت كردين لطفا تاپيك رو حل شده كنيد

        کامنت

        چند لحظه..