دوستان من يه متغير به نام a از نوع double تعريف كردم ولي وقتي نتيجه محاسبات زير را مي خوام در اين متغير قرار دهم پيغام over flow را ميده
در صورتي كه حاصلش زياد هم نيست
dim a as double
a=365 * 24 * 3600
پيغام خطا :
run time error '6
overflow
Printable View
دوستان من يه متغير به نام a از نوع double تعريف كردم ولي وقتي نتيجه محاسبات زير را مي خوام در اين متغير قرار دهم پيغام over flow را ميده
در صورتي كه حاصلش زياد هم نيست
dim a as double
a=365 * 24 * 3600
پيغام خطا :
run time error '6
overflow
دوستان راهنمايي كنيد به شدت نياز دارم
دوستان خواهش مي كنم
نقل قول:
dim a as double
a=365 * 24 * 3600
پيغام خطا :
run time error '6
overflow
Year(Now) * 365 * 24 * 3600 + Day(Now) * 24 * 3600 + Hour(Now) * 3600 + Minute(Now) * 60 + Second(Now)
موفق باشید.
با سلام
در واقع علت این خطا مربوط می شه به ضعف عملگر ضرب در VB 6 (البته به اعتقاد من):
شما مستقیماً از عدد در یک عبارت ریاضی استفاده کرده اید و قالبی برای اعداد در نظر نگرفته اید
اعداد شما در رنج integer هستند. تا وقتی حاصلضرب از مقدار integer فراتر نرود، مشکلی نیست اما وقتی حاصلضرب از محدوده integer بالاتر برود، آن وقت است که سریز زخ می دهد.
راه حل :
از متغیر برای تخصیص مقادیر اولیه استفاده کنید:
dim x, y, z as integer
dim a as long
x=365
y=24
z=3600
a=x*y*z
موفق باشید
Dim a As Double
a = CDbl(365) * 24 * 3600
مرسي .
كار تابع cdbl چيه ؟
Convert to Double
تابعی برای تبدیل به نوع دابل