我建了一个工程
有两个普通的form,form1和form2
我想把form1里的声明的一个全局数组x(i)
在form2里也能用怎么不行呢我是这样做的
public x() as stringPrivate Sub xxx_DblClick()
i=1
redim x(i)
x(0)= "ssss"
x(1)= "bbbb"
form2.Visible = True
End Sub
form2里写的是
Private Sub Command1_Click()
MsgBox x(0)
MsgBox x(1)
End Sub
但是结果public x() as string这里就报错误????
提示我说:“常数、固定长度字符串、数组、用户定义类型以及Declare语句不允许作为对象模块Public的成员。”
为什么啊!!???
有两个普通的form,form1和form2
我想把form1里的声明的一个全局数组x(i)
在form2里也能用怎么不行呢我是这样做的
public x() as stringPrivate Sub xxx_DblClick()
i=1
redim x(i)
x(0)= "ssss"
x(1)= "bbbb"
form2.Visible = True
End Sub
form2里写的是
Private Sub Command1_Click()
MsgBox x(0)
MsgBox x(1)
End Sub
但是结果public x() as string这里就报错误????
提示我说:“常数、固定长度字符串、数组、用户定义类型以及Declare语句不允许作为对象模块Public的成员。”
为什么啊!!???
或者
2,private x() as string
*****************************
Private Sub Command1_Click()
MsgBox form1.x(0)
MsgBox form1.x(1)
End Sub
Private Sub Command1_Click()
MsgBox form1.x(0)
MsgBox form1.x(1)
End Sub
这样不行
我试了
---------------------------------
private x() as string
这样不行
我试了
---------------------------------
放到bas文件里怎么回事?
Private Sub Command1_Click()
MsgBox form1.x(0)
MsgBox form1.x(1)
End Sub不行啊
但是因为我不懂模块是干什么的
所以没有这种方式难道模块就是干这个用的吗?
为什么我把form1里的函数放到模块里
Private Function xlsLoad(ExcelPathName)
Dim objExcel As Excel.Application
Dim objWorkBook As Excel.Workbook
Dim objSheet As Excel.Worksheet
Dim objRange As Excel.Range '将EXCEL表中的数据导入到网格控件中
Set objExcel = New Excel.Application
Set objWorkBook = objExcel.Workbooks.Open(ExcelPathName)
Set objSheet = objWorkBook.ActiveSheet
Set objRange = objSheet.UsedRange
xlsRows = objRange.Rows.Count
xlsCols = objRange.Columns.Count
xlsData.Rows = xlsRows + 1
xlsData.Cols = xlsCols + 1
For m = 1 To xlsRows
For n = 1 To xlsCols
With xlsData
.TextMatrix(m, n) = objSheet.Cells(m, n)
End With
Next
Next
objWorkBook.Close
Set objRange = Nothing
Set objSheet = Nothing
Set objWorkBook = Nothing
Set objExcel = Nothing
End Function
就用不了
我还得把他改成public的
然后写对象的时候,还得带上是哪个form的
真麻烦
都写在frm里不就得了吗
唉!还是要谢谢大家!