Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86

Ошибка переполнения

07.11.2022, 16:24. Показов 608. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Делаю не большое приложение. Но проблема в чем :
Когда я вбиваю данные в TextBoxt у меня выстреливает ошибка owerflow 6
Это вроде переполнение данных но каким образом эта ошибка возникает не понимаю.
Код прикладываю
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
Option Explicit
 
 
 
Private Sub Command2_Click()
MsgBox ("Расчет Кардио показателей")
End Sub
 
Private Sub Text1_Change()
Text7.Text = Round(Sqr(Val(Text1.Text) * Val(Text2.Text) / 3600))
 
End Sub
 
Private Sub Text10_Change()
Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
End Sub
 
Private Sub Text11_Change()
Text11.Text = Round(Val(Text6.Text) + Val(Text5.Text) / Val(Text4.Text))
 
End Sub
 
 
Private Sub Text2_Change()
Text7.Text = Round(Sqr(Val(Text1.Text) * Val(Text2.Text) / 3600))
End Sub
 
Private Sub Text4_Change()
Text11.Text = Round(Val(Text6.Text) + Val(Text5.Text) / Val(Text4.Text))
Text8.Text = Round(Val(Text5.Text) + Val(Text4.Text) + Val(Text6.Text) ^ 3)
Text9.Text = 0.8 * 1.04 * (Val(Text8.Text) - Val(Text4.Text) ^ 3 + 0.6)
End Sub
 
Private Sub Text5_Change()
Text11.Text = Round(Val(Text6.Text) + Val(Text5.Text) / Val(Text4.Text))
Text8.Text = Round(Val(Text5.Text) + Val(Text4.Text) + Val(Text6.Text) ^ 3)
End Sub
 
Private Sub Text6_Change()
Text11.Text = Round(Val(Text6.Text) + Val(Text5.Text) / Val(Text4.Text))
Text8.Text = Round(Val(Text5.Text) + Val(Text4.Text) + Val(Text6.Text) ^ 3)
End Sub
 
Private Sub Text7_Change()
Text7.Text = Round(Sqr(Val(Text1.Text) * Val(Text2.Text) / 3600))
Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
 
 
End Sub
 
Private Sub Text8_Change()
Text8.Text = Round(Val(Text5.Text) + Val(Text4.Text) + Val(Text6.Text) ^ 3)
Text9.Text = 0.8 * 1.04 * (Val(Text8.Text) - Val(Text4.Text) ^ 3 + 0.6)
 
End Sub
 
Private Sub Text9_Change()
Text9.Text = 0.8 * 1.04 * (Val(Text8.Text) - Val(Text4.Text) ^ 3 + 0.6)
Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
 
 
 
 
End Sub
Миниатюры
Ошибка переполнения  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.11.2022, 16:24
Ответы с готовыми решениями:

Ошибка переполнения при построении графика
Private Sub Command1_Click() Dim x, y As Single Dim m, v, s As Double n = Val(Text1.Text) m = -2 v = 2 s = 0.00006 Cls ...

Ошибка переполнения при рисовании на PictureBox
Всем привет, помогите разобраться с кодом. Постоянно выдает ошибку overflow. Заранее спасибо! Private Sub Command1_Click() ...

Решение системы уравнений методом Гаусса и ошибка переполнения (Overflow)
Нужно было составить прогу решения системы уравнений методом Гаусса, выдаёт эту ошибку в выделенной сточке: Private Sub...

9
 Аватар для Argus19
1426 / 443 / 78
Регистрация: 24.09.2017
Сообщений: 2,524
Записей в блоге: 22
07.11.2022, 17:44
Цитата Сообщение от sergun87 Посмотреть сообщение
Когда я вбиваю данные в TextBoxt
В любой или в какой-то конкретный?
0
sleep
 Аватар для I can
4916 / 4565 / 838
Регистрация: 13.04.2015
Сообщений: 9,695
07.11.2022, 18:46
Лучший ответ Сообщение было отмечено sergun87 как решение

Решение

Цитата Сообщение от sergun87 Посмотреть сообщение
Private Sub Text10_Change()
Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
End Sub
Нельзя изменять текст в событии изменения текста.
0
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
07.11.2022, 22:05  [ТС]
В конкретный.
Когда я прописываю
Visual Basic
1
2
3
Private Sub Text10_Change()
Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
End Sub
Начинаются проблемы.
0
sleep
 Аватар для I can
4916 / 4565 / 838
Регистрация: 13.04.2015
Сообщений: 9,695
07.11.2022, 22:34
Цитата Сообщение от sergun87 Посмотреть сообщение
Начинаются проблемы.
Я кому предыдущее сообщение писал?
0
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
08.11.2022, 07:55  [ТС]
Хамить зачем?
Я отвечал на сообщение одному из собеседников.
0
sleep
 Аватар для I can
4916 / 4565 / 838
Регистрация: 13.04.2015
Сообщений: 9,695
08.11.2022, 08:08
Цитата Сообщение от sergun87 Посмотреть сообщение
Я отвечал на сообщение одному из собеседников.
По имени надо обращаться к собеседнику.
0
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
08.11.2022, 08:25  [ТС]
Цитата Сообщение от I can Посмотреть сообщение
По имени надо обращаться к собеседнику.
Учтем. Но вы зря обиделись.
Я учту вашу рекомендацию )
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38161 / 21096 / 4306
Регистрация: 12.02.2012
Сообщений: 34,683
Записей в блоге: 14
09.11.2022, 05:45
Лучший ответ Сообщение было отмечено sergun87 как решение

Решение

sergun87, ничего удивительного. Рассмотрим навскидку вот это:

Visual Basic
1
2
3
4
Private Sub Text7_Change()
           Text7.Text = Round(Sqr(Val(Text1.Text) * Val(Text2.Text) / 3600))
           Text10.Text = Round(Val(Text9.Text) / Val(Text7.Text))
End Sub
Здесь изменяется поле Text10 с помощью операции деления. Но в поле Text7 может быть пустота. Вот и переполнение. Правильно это программируется так:

Visual Basic
1
2
3
4
5
Private Sub Text7_Change()
           Text7.Text = Round(Sqr(Val(Text1.Text) * Val(Text2.Text) / 3600))
           v7#=Val(Text7.Text)
           if abs(v7#) > 0 then Text10.Text = Round(Val(Text9.Text) / v7# )
End Sub
И самое главное: не вздумай вводить дробные числа с запятой в качестве разделителя. Val реагирует только не точку! Поэтому, val("0,5") будет равно нулю. а val("0.5") будет 0.5
1
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
09.11.2022, 08:04  [ТС]
Цитата Сообщение от Catstail Посмотреть сообщение
И самое главное: не вздумай вводить дробные числа с запятой в качестве разделителя. Val реагирует только не точку! Поэтому, val("0,5") будет равно нулю. а val("0.5") будет 0.5
Вот кстати с дробными тоже были проблемы. Теперь понятно.
Спасибо большое!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.11.2022, 08:04
Помогаю со студенческими работами здесь

Ошибка переполнения
Происходит ошибка "Переполнение" на 53 строке, подскажите как это исправить. CLS PRINT " Rac4et xolodnou prokatki na stane 2030...

Возникает ошибка переполнения
Выдает ошибки: run-time error '-2147467259 (80004005) возникает ошибка переполнения Private Sub Workbook_Open() Call...

Тангенс и логарифм: при вычислении ошибка переполнения
возник один вопрос. подскажите пожалуйста!!! а=0,256, х=lg корень из 2 y=корень из (ax в 4 степени + 4х в квадрате)/tg(a-x) ...

Операция со слишком большими массивами выдает ошибку переполнения
Sub O1() Dim A() Dim i As Integer A = Range(Cells(1, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 2)) For i = 1 To UBound(A) - 1 ...

Вывести результат сложения заданных чисел при отсутствии переполнения
Требуется создать программу для проверки, можно ли сложить два задаваемых числа(со знаком). Вводные данные: во входном файле находятся...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru