【问题标题】:VBA type question beginnerVBA类型问题初学者
【发布时间】:2010-11-22 06:50:27
【问题描述】:

我是新手,我正在尝试学习 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这个命令是什么意思?

提前感谢您的帮助。

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    TypeEnd Type 之间的“事物”是 rPaciente 类型的成员。它们没有映射到任何东西,它们只描述了这种类型打算包含的数据集。
    可能有一个例程通过创建类型的实例并将值从工作表复制到实例的成员变量来将工作表上的单元格映射到这种类型的成员。

    Public someting() As otherthingotherthing 类型的数组。声明中不包含数组的维度,所以在使用之前,你必须ReDim它:

    ReDim someting(1 to 10)
    

    【讨论】:

      【解决方案2】:

      Type 声明只是声明了一个 Visual Basic Type 结构。类似于(真正简化的视图)c++ 中的 struct 或任何实验室语言中没有方法的类。

      说明

      Public mPaciente() As rPaciente
      

      声明一个由 rPaciente 对象组成的 dinamyc 数组,它可能会被您的 excel 文件中的每一行填充。

      指令

      Public glQtdPaciente As Long
      

      声明一个类型为Long的变量,名称为glQtdPaciente

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-01-04
        • 2020-11-23
        • 2015-03-16
        • 2012-04-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多