我有个问题。如我有两个窗口。
一个是Form1 
一个是Form2
我在Form1里设了值。
如:
dim b
text1.text=2
b=text1.text
我怎么把那个b值传到Form2里。
如:
dim t
t=b
msgbox t
------------------------
请高手解答

解决方案 »

  1.   

    晕哦:)把dim改成public就行啦:)调用时指名窗体

    msgbox form1.b
      

  2.   

    form1中
    option explicit
    public b
    sub form_load()
    b=text1.text
    end subform2 中调用dim t 
    t=form1.b
    msgbox t
      

  3.   

    你可以在ForM2中用
    msgbox form1.text1.text
      

  4.   

    这样是可以。但是。如果这样了?我技术很差。
    Private Sub MSFlexGrid1_Click()
    Text2.Text = "" & MSFlexGrid1.Row & " "//传输行数
    b = Text2.Text
    End Sub我怎么传输当前MSFlexGrid1里的值了。?
    如b=2行。
    2行的第一行第一列内容是:谢谢大家
    我怎么把第2行里的第一个“谢谢大家”给传到form2里了。 ?
    用怎么把2行里的所有内容传过去了。谢谢大家。帮忙回答。这个也是100分
    外用户:BlueBeer(1win)你的100分。我给你马上给你加上去
      

  5.   

    晕,楼主别再散分啦~:)给你个最简单的例子
    新建个工程,两个窗体form1和form2中各放一个command1,form1中放一个MSFlexGrid'form1代码:
    Public bPrivate Sub Command1_Click()
    b = 2
    Form2.Show
    End SubPrivate Sub Form_Load()
    MSFlexGrid1.Cols = 3
    MSFlexGrid1.Rows = 2
    MSFlexGrid1.AddItem "a" & vbTab & "b" & vbTab & "c", 2
    End Sub'form2代码:
    Private Sub Command1_Click()
    Form1.MSFlexGrid1.Row = Form1.b
    Dim a() As Variant, i As Long
    ReDim a(Form1.MSFlexGrid1.Cols - 1) As Variant
    For i = 0 To UBound(a)
    Form1.MSFlexGrid1.Col = i
    a(i) = Form1.MSFlexGrid1.Text
    Next i
    MsgBox Join(a, vbTab)
    End Sub