Public Type A
AA() As String
End TypePublic Type B
BB() As String
End Type'-------------------Public Type DEF
DD() As Variant
End TypePublic Type ABC
EE() As DEF
End TypePublic Test As ABCVB6怎么在代码中依需求指定DD()下层阵列结构型态为A或B?
AA() As String
End TypePublic Type B
BB() As String
End Type'-------------------Public Type DEF
DD() As Variant
End TypePublic Type ABC
EE() As DEF
End TypePublic Test As ABCVB6怎么在代码中依需求指定DD()下层阵列结构型态为A或B?
AA() As String
End TypePublic Type B
BB() As String
End Type'-------------------
Public Type DType
AA() As A
BB() As B
End TypePublic Type DEF
DD() As DType
End TypePublic Type ABC
EE() As DEF
End TypePublic Test As ABC
Public Test2 As DTypeSub Main()
ReDim Test2.AA(10)
ReDim Test2.BB(5)
End Sub
Public Type Coordinate
X As Integer 'X座标
Y As Integer 'Y座标
End TypePublic Type MeasuredValue
MValue As String 'Pin脚量测值
MUnit As String 'Pin脚量测单位
End Type'PMU
Public Type PinContent
PMU_PinName As String 'Pin脚名称
PMU_PinForce As MeasuredValue 'Force值
PMU_PinForcerng As MeasuredValue 'ForceRange值
PMU_PinMin As MeasuredValue 'Min值
PMU_PinMax As MeasuredValue 'Max值
PMU_PinMeas As MeasuredValue 'Meas值
PMU_PinMeasrng As MeasuredValue 'MeasRange值
PMU_PinResult As String 'Pass or Fail'Search
'Public Type Search_Data
Search_PinName As String
Search_From As MeasuredValue
Search_To As MeasuredValue
Search_Step As MeasuredValue
Search_Min As MeasuredValue
Search_Max As MeasuredValue
Search_Value As MeasuredValue
Search_Result As String
'End Type'TMU
'Public Type TMU_Data
TMU_MeasureType As String
TMU_MeasureMode As String
TMU_PinName As String 'Pin脚名称
TMU_Windows As MeasuredValue 'Windows值
TMU_PinMin As MeasuredValue 'Min值
TMU_PinMax As MeasuredValue 'Max值
TMU_PinMeas As MeasuredValue 'Meas值
TMU_ResultValue As String 'Result.Value
TMU_SearchedStart As String
'End Type'Function
'Public Type Function_Data
Function_PattenName As String 'Function Patten名称
Function_PattenNumber As String 'Function Patten编号
Function_Start As String 'Function Start
Function_End As String 'Function End
Function_Size As String 'Function Size
Function_Result As String
'End Type'OPERATION
'Public Type OPERATION_Data
OPERATION_Min As String
OPERATION_Max As String
OPERATION_ResultValue As String
OPERATION_Unit As String
OPERATION_Result As String
'End Type'DPS
'Public Type DPS_Data
DPS_PinName As String 'DPS
DPS_Force As MeasuredValue 'DPS
DPS_VRang As MeasuredValue 'DPS
DPS_IRang As MeasuredValue 'DPS
DPS_ClampH As MeasuredValue 'DPS
DPS_ClampL As MeasuredValue 'DPS
'End Type'PXI
'Public Type PXI_Data
PXI_dbR_ADC As String 'PXI
PXI_Test As String 'PXI
PXI_Item_Name As String 'PXI
PXI_Channel_Name As String 'PXI
PXI_Measured As String 'PXI
PXI_LowLimit As String 'PXI
PXI_HighLimit As String 'PXI
PXI_Decision As String 'PXI
'C_BASE
'Public Type C_BASE_Data
C_BASE_String() As String 'C_BASE字串
C_BASE_Count As Integer 'C_BASE字串数量
End Type'此行以上有26种底层结构分类(尚未完成)
'----------------------------------------------------------------------------Public Type Pin
PinData() As PinContent 'Pin脚测试资料
PinNum As Integer 'Pin脚总数
ItemResult As String 'Pass or Fail
ICNumber As Integer 'IC颗数索引值
Pin_Coordinate As Coordinate 'Site座标值
End TypePublic Type Bin
SoftBin As Integer 'Software Bin Number
HwardBin As Integer 'Hardward Bin Number
End TypePublic Type Site
SiteData() As Pin '该SiteNum中的资料
SiteNum As Integer 'Site数量
SiteCount As Integer 'Site数量计算
ItemType As String 'ItemTest类型
ItemTestTime As String 'ItemTest时间 + 日期
SiteBin() As Bin 'SiteBin编号
ItemTestName As String 'ItemTest名称
End TypePublic Type ItemTest
ItemTestData() As Site '该ItemTest中的资料
ItemTestNumber As Integer '该SubTest中ItemTest总数
SubTestName As String '该ItemTest所属SubTest名称
SubTest_ID As String '该SubTest ID编号
SubTest_Count As String '该SubTest累计数量
SubTest_FailBin As String '该SubTest Fail Bin Number
End TypePublic Type SubTest
SubTestData() As ItemTest '该SubTest中的资料
SubTestNumber As Integer '该Flow中SubTest总数
FlowTestTime As String '该Flow测试时间 + 日期
FlowTestCoordinate As Coordinate '工程模式下的测试座标
Test_Dut_Count As Integer '该Flow中Dut数
End TypePublic Type CPMode
Data_Log_Vesion As String 'Data Log Vesion
Lot_ID As String 'Lot ID(CP)
Wafer_ID As String 'Wafer ID(CP)
Prober_Temperature As String 'Prober Temperature(CP)
Probe_card_number As String 'Probe Card Number(CP)
End TypePublic Type FTMode
Customer_Lot_ID As String 'Customer Lot ID(FT)
Internal_Lot_ID As String 'Internal Lot ID(FT)
Dut_Board As String 'Dut Board(FT)
End TypePublic Type Flow
FlowData() As SubTest '该Flow中的资料
FlowNumber As Integer '该Log档中Flow的总数 MCP As CPMode 'IC种类(CP)
MFT As FTMode 'IC种类(FT)
LogFileName As String 'Log档所在路径位置
StartTestTime As String '该Log档的测试时间 + 日期
PC_Name As String 'PC Name
IP_Address As String 'IP Address
EndTestTime As String '该Log档的结束测试时间 + 日期
Project_Path As String 'Project Path
Test_DUTs As String 'Test DUTs
Test_Mode As String '工程模式或是量产模式
Flow_Name As String '该Log档的Flow名称
Device_Name As String 'Device Name
Device_Pin_Count As String '测试Pin脚总数
End TypePublic Test As Flow
以上为部份源代码
希望能让 PinData() as PinContent 依照需求选择连接底层结构类型
谢谢〜我大概知道你说的方法怎做了〜
只是我想知道还有别的方法吗?例如:
一个结构对像能assign给一个结构底层的Variant或Object类型吗?
或是能否将PinData()的起始地址指到另一个结构的起始地址?
用VB6调用EXCEL的Object写VBA Code也是很不爽〜好吧〜看来还是得认命〜谢谢〜
要是日后用C应该就可以用指针进行串接了吧〜
既然您都提到了,我也顺便问问〜
VB.NET处理二进制的资料速度会比C来得更有效率吗?
目前工作上几乎都是用VB6和VC6〜原本看到的WIN7不支援VB6的长官们很什么困扰〜
但是听说WIN8有支援〜大概就不会想改写旧系统了〜