分享一段VB脚本,用于WinCC中打开Excel获取数据
'############## 检查环境,是否具备导入的条件 #####################
Dim LMName
LMName = HMIRuntime.Tags ("@LocalMachineName").Read
Const OStr=""
'#################### 打开并检查所选Excel表 ###################
Dim outExcelApp
Set outExcelApp = CreateObject("Excel.Application")
outExcelApp.Visible = 0
outExcelApp.Workbooks.Open OpenExcelFile
Const startCellR=2 '预设Excel表的标准格式,根据出库单的格式,定义出库单中左上角第一个数据单元的行号和列号以及数据列数
Const startCellC=2
Dim fixCLen
fixCLen=3
'获取Excel表的基本情况
Dim ETypeNum
Dim ENumNum
ETypeNum = 0
ENumNum = 0
Dim HCellC
Dim HCellVal
Dim HCellValEx
HCellC = 1
Do
HCellVal = outExcelApp.Cells(startCellR-1,HCellC).Value
HCellValEx = Trim(HCellVal)
If Left(HCellValEx,1)&Right(HCellValEx,1)="型号" Then
ETypeNum = HCellC
Else If Left(HCellValEx,1)&Right(HCellValEx,1)="数量" Then
ENumNum = HCellC
End If
End If
HCellC = HCellC + 1
Loop While (outExcelApp.Cells(startCellR-1,HCellC).Value <>OStr)
If ETypeNum = 0 Or ENumNum = 0 Then
MsgBox "所选择的出库单格式有误!" '检查excel表的标题行,是否具有"型号"和"数量"两个最基本的列
Exit Sub
End If
'得到"型号"的列号为ETypeNum,"数量"的列号为ENumNum