2010-11-21 96 views
1

我是一个新手,我想学习VBA和我有一个关于这个代码的问题: (对不起,在英文任何错误,我不是一个母语)VBA类型的问题初学者

Option Explicit 

Type rPaciente 'matriz de pacientes 
    CodPaciente As Long 
    PriorPaciente As Long 
    IntvChegDistr As String 
    Par1 As Double 
    Par2 As Double 
    Par3 As Double 
    Par4 As Double 
    IntvCheg As Double 
    InstCheg As Double 
End Type 
Public mPaciente() As rPaciente 
Public glQtdPaciente As Long 

TypeEnd Type之间的这些“东西”是什么,它们是我工作表范围内的单元格,因为我在工作表中获得了像Par1,Par2,...,Par4这样的列,但没有名为IntvCheg的列既不InstCheg。那么命令Public someting() As otherthing是什么意思?

在此先感谢您的帮助。

回答

1

“事情” 之间TypeEnd TyperPaciente类型的成员。它们没有被映射到任何东西,它们只描述了这种类型意图包含的数据集。
可能有一个例程将地图上的单元格映射到此类型的成员,方法是创建一个类型实例并将该表单中的值复制到实例的成员变量中。

Public someting() As otherthingotherthing类型的数组。该声明不包括阵列的尺寸,所以在它可以使用之前,您必须ReDim它的东西:

ReDim someting(1 to 10) 
0

类型声明只是声明一个Visual Basic类型结构。就像(真正简化的视图)在C++中的struct或没有任何实验语言中的方法的类。

指令

Public mPaciente() As rPaciente 

声明rPaciente对象可能会充满你的Excel文件中的每一行的dinamyc阵列。

指令

Public glQtdPaciente As Long 

声明Long类型的变量名为glQtdPaciente