可以采用两种方法来解决:
一)在标准模块中声明全局变量,该变量在一个窗体的某事件中赋值或改变,另一窗体的某事件或过程中执行时就可直接引用。
'标准模块代码
Option Explicit
Public i As Long
'Form1代码
Option Explicit
Private Sub Command1_Click()
i = 12345
End Sub
Private Sub Form_Load()
Form2.Show
End Sub
'Form2代码
Option Explicit
Private Sub Command1_Click()
Text1 = i
End Sub
二)定义变量属于一个窗体上的公共变量,在另一格窗体可使用(窗体名.变量名)的代码来饮引用。
例引用Form1中定义的公用变量i赋值给文本框Text1的属性Text,则写为
Text1.Text = Form1.i
'Form1代码
Option Explicit
Public i As Long
Private Sub Command1_Click()
i = 12345
End Sub
Private Sub Form_Load()
Form2.Show
End Sub
'Form2代码
Option Explicit
Private Sub Command1_Click()
Text1 = Form1.i
End Sub
全局变量或公用变量用Public 语句声明。
Public 语句
在模块级别中使用,用于声明公用变量和分配存储空间。
如果只是2个窗体间传值,可以在第一个窗体的unload事件里直接把text的值赋给form2.text1就可以了。。
在第二个窗体里定义一个全局变量,public txt as string
窗体一退出时将文本框的值给变量txt,窗体二在读取这个变量就行了
form1:text1. code: private sub form_load() on error resume next open "c:\1.txt" for input as #1 input #1,t$ text1.text=t$ close end sub private sub form_unload() open "c:\1.txt" for output as #1 print #1,text1.text close end sub 第二个问题,只需调用form1.text1.text