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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2011, 16:20   #1
Vceznayka
Пользователь
 
Регистрация: 27.10.2011
Сообщений: 27
По умолчанию Как в VB передать данные с одной формы в другую

Итак необходима чтобы z из Private Sub UserForm_Activate() формы ALL_insident, перешла в Private Sub CommandButton2_Click() форма ALL_insident, при нажатии кнопки значение z перешла в форму Close_insident

Forma ALL_insident
Private Sub CommandButton2_Click()
Unload Me
End Sub
___________________________________ ____________
Private Sub CommandButton3_Click()
Close_insident Z
End Sub
___________________________________ ________________
Private Sub UserForm_Activate()
Dim data(1 To 10) As Variant
Dim vrema As Date
Dim x As Integer
Dim j As Integer
Dim q As Integer
Dim wb As Workbook
Dim XL As Excel.Application
Fail$ = "C:\Documents and Settings\Пользователь\Рабочий стол\new projekt\ewsd.xlsx"
Set XL = CreateObject("Excel.Application")
Set wb = XL.Workbooks.Open(Fail)
r = 1
Do While wb.Worksheets("Insident").Cells(1). Cells(r).Value <> ""
r = r + 1
Loop
w = r + 1
q = 1
' инцидент 1
wb.Worksheets("Insident").Activate
j = q
Do While wb.Worksheets("Insident").Cells(11) .Cells(j).Value <> "Открыт"
j = j + 1
If j = w Then
MsgBox "Необнаружено не одного открытого инцидента"
Exit Sub
End If
Loop
x = j
z=j ‘данные для Close_insident
'записываем данные из таблицы в массив
For i = 1 To 10
With wb.Worksheets("Insident")
data(i) = .Cells(x, i).Value
End With
Next
vrema = data(2)

With ALL_insident
'Номер инцидента
.Label1.Caption = data(8)
'Напровление
.Label2.Caption = data(3)
'TS
.Label3.Caption = data(4)
'Потребитель
.Label4.Caption = data(10)
'Дата инцидента
.Label5.Caption = data(9)
'время инцидента
.Label6.Caption = vrema
'пречина инцидента
.Label7.Caption = data(5)
'ксто сдал инцидент
.Label8.Caption = data(1)
End With

wb.Close False
XL.Quit

End Sub




Forma Close_insident

Private Sub Form_Activate(z)
Dim data(1 To 10) As Variant
Dim vrema As Date
Dim x As Integer
Dim j As Integer
Dim q As Integer
Dim wb As Workbook
Dim XL As Excel.Application
Fail$ = "C:\Documents and Settings\Пользователь\Рабочий стол\new projekt\ewsd.xlsx"
Set XL = CreateObject("Excel.Application")
Set wb = XL.Workbooks.Open(Fail)

‘ записываем данные из таблицы в массив
For i=1 To 10
With wb.Worksheets(“Insident”)
Data(i)=.Cells(z, i).Value
End With
Next

End sub
Vceznayka вне форума Ответить с цитированием
Старый 26.12.2011, 17:13   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

я же вам пример привел в вашей же теме
при нажатии кнопки 1 запускался модуль 2 а в нем переменная n была равна 1
Принцип тот же самый,какая разница куда передавать,в модуль или форму.
даже на 3 успели сообразить в вашей теме
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно передать несколько разнородных данных из одной формы в другую? tumanovalex C# (си шарп) 2 21.05.2011 10:05
как копировать данные из одной таблоицы в другую MixanMM БД в Delphi 3 30.07.2010 10:47
Как передать значение пременной из одной функции в другую? mr.-parker Общие вопросы C/C++ 2 27.03.2010 15:01
Как данные из полей ввода передать на другую страницу Arassir PHP 1 01.02.2010 22:42
C#: Передать значение переменной из одной формы в другую Veiron Общие вопросы .NET 3 29.06.2009 17:43