Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2010, 14:56   #1
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию Ошибка при выполнении процедуры.

Здравствуйте. Подскажите, почему выдается ошибка?

Оформил код (s=3) в виде процедуры.
Код:
Public Sub Rasxod()
	s=3 ’Код
End Sub
Затем вставил процедуру в код
Код:
‘…………………………………
Module2.Rasxod
‘…………………………………
При выполнение Выдается ошибка на строку кода которая установлена в процедуре Sub
.Cells(i, 28).Value = Round(([d13] + [d16] + [d19] + [d22]), 0) + .Cells(i, 28).Value
При выполнении s=3 без процедуры ошибки нет.
___________________________________ _____________________
Сообщение об ошибке при выполнении процедуры.
Изображения
Тип файла: jpg mistake.JPG (9.0 Кб, 33 просмотров)
segail вне форума Ответить с цитированием
Старый 17.02.2010, 15:03   #2
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

крайне информативный скрин, но файл с кодом был бы чуть чуть понаглядней

вообще не понял что Вы хотели получить от строки Module2.Rasxod

Public s

Sub pp()
s = 3
End Sub

Sub mm()
Dim m
Module1.pp
m = s + 1
End Sub

Последний раз редактировалось Dophin; 17.02.2010 в 15:06.
Dophin вне форума Ответить с цитированием
Старый 17.02.2010, 15:21   #3
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

Цитата:
Сообщение от Dophin Посмотреть сообщение
вообще не понял что Вы хотели получить от строки Module2.Rasxod
Выполнение кода (s=3), который оформлен в виде процедуры

Если кратко, то так.
Код:
Private Sub Cmd_Select_Списание_Click()
‘…
‘Module2.Rasxod
‘…
End Sub

Последний раз редактировалось segail; 17.02.2010 в 15:27.
segail вне форума Ответить с цитированием
Старый 17.02.2010, 15:31   #4
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

ну а смысл? ну выполнится он и что дальше должно произойти?

Вам тяжело читать большие сообщения? Мой предыдущий ответ Вас не устроил или Вы не дочитали?
Dophin вне форума Ответить с цитированием
Старый 17.02.2010, 15:42   #5
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

Цитата:
Сообщение от Dophin Посмотреть сообщение
ну а смысл? ну выполнится он и что дальше должно произойти?

Вам тяжело читать большие сообщения? Мой предыдущий ответ Вас не устроил или Вы не дочитали?
Короче процедура выглядит так.
Код:
Public Sub Rasxod()
    
    Dim i As Integer
    For i = 1 To 444
                With Sheets("Îò÷åò")
                If Form_SelectDate.chb_Time.Value = True Then Sheets("Îò÷åò").Cells(i, 2).Value = Form_SelectDate.Label_Hour.Caption + ":" + Form_SelectDate.Label_Minute 'Ââîä âðåìåíè åñëè chb_Time îáîçíà÷åí ãàëî÷êîé
                If Form_SelectDate.chb_Time.Value = False Then Sheets("Îò÷åò").Cells(i, 2).Value = "" 'Óäàëåíèå âðåìåíè åñëè chb_Time íå îáîçíà÷åí ãàëî÷êîé
                .Cells(i, 3).Value = UserForm1.TextBox1.Text + .Cells(i, 3).Value
                .Cells(i, 4).Value = UserForm1.TextBox2.Text + .Cells(i, 4).Value
                .Cells(i, 5).Value = VBA.Val(VBA.Replace(UserForm1.TextBox3.Text, ",", ".")) + .Cells(i, 5).Value
                .Cells(i, 6).Value = VBA.Val(VBA.Replace(UserForm1.TextBox5.Text, ",", ".")) + .Cells(i, 6).Value
                .Cells(i, 7).Value = VBA.Val(VBA.Replace(UserForm1.TextBox6.Text, ",", ".")) + .Cells(i, 7).Value
                .Cells(i, 8).Value = UserForm1.TextBox7.Text + .Cells(i, 8).Value
                .Cells(i, 9).Value = UserForm1.TextBox8.Text + .Cells(i, 9).Value
                .Cells(i, 21).Value = Range("F10").Value
                .Cells(i, 22).Value = Range("G10").Value
                .Cells(i, 28).Value = Round(([d13] + [d16] + [d19] + [d22]), 0) + .Cells(i, 28).Value
                If .Cells(i, 31).Value > "" Then .Cells(i, 31) = .Cells(i, 31) & Range("A9").Value & "    " & Range("G8").Value & "    " & UserForm1.TextBox1.Text & " ë. " & UserForm1.TextBox2.Text & " êã.  /  " Else .Cells(i, 31) = "/  " & Range("A9").Value & "    " & Range("G8").Value & "    " & UserForm1.TextBox1.Text & " ë. " & UserForm1.TextBox2.Text & " êã.  /  "
                End With
                UserForm1.Label6.Caption = "Ââîä äàííûõ ïðèõîäà íà " & Form_SelectDate.TextBox_Äàòà & " ïðîèçâåäåí"
                UserForm1.Label6.ForeColor = &HC00000
    Next
End Sub
Она должна выполниться при клике по кнопке Private Sub Cmd_Select_Списание_Click()
Не выполняется, выходит ошибка.
segail вне форума Ответить с цитированием
Старый 17.02.2010, 15:46   #6
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

и что? Вы предлагаете мне сделать файл со всеми перечисленными формами и текстбоксами на кривой кодировке? Выложить файл - никак?
Dophin вне форума Ответить с цитированием
Старый 17.02.2010, 15:52   #7
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

Цитата:
Сообщение от Dophin Посмотреть сообщение
и что? Вы предлагаете мне сделать файл со всеми перечисленными формами и текстбоксами на кривой кодировке? Выложить файл - никак?
Да зачем формы.
В чистом виде код выполняется. А в виде процедуры нет. Если ошибка в коде, а не в правильности оформления процедуры тогда вопрос снят.
segail вне форума Ответить с цитированием
Старый 17.02.2010, 15:53   #8
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

какой код? какая процедура? где между ними связь? что такое чистый вид? чем отличается от процедуры? когда научитесь вопросы задавать?
Dophin вне форума Ответить с цитированием
Старый 17.02.2010, 15:56   #9
Dophin
Форумчанин
 
Аватар для Dophin
 
Регистрация: 13.01.2010
Сообщений: 410
По умолчанию

аааааааа. Вам видимо надо это

Private Sub Cmd_Select_Списание_Click()
‘…
call Module2.Rasxod
‘…
End Sub

хотя один фиг все работает. без файла непонятно что там у Вас не выходит
Dophin вне форума Ответить с цитированием
Старый 17.02.2010, 16:03   #10
segail
Форумчанин
 
Регистрация: 13.06.2009
Сообщений: 691
По умолчанию

Я попростому:

Так выполняется
Код:
Private Sub Cmd_Select_Списание_Click()
‘…
Код ‘ Код который указан выше без процедуры
‘…
End Sub
Так не выполняется
Код:
Private Sub Cmd_Select_Списание_Click()
‘…
Module2.Rasxod ’Код который указа выше
‘…
End Sub
segail вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при выполнении приложения ADJAVA Общие вопросы по Java, Java SE, Kotlin 0 24.07.2008 11:07
Ошибка при Выполнении Insert nimf БД в Delphi 2 27.11.2007 18:16
Ошибка при выполнении запроса Шани БД в Delphi 4 27.07.2007 13:04
Странная ошибка при выполнении okolobaxa Общие вопросы Delphi 2 03.07.2007 00:47
Ошибка при выполнении запроса Elena БД в Delphi 2 25.05.2007 16:19