Set xlApp = CreateObject("Excel.Application") 此句错误!!!!!

xiaobird1 2003-09-29 05:21:01
我使用vb倒入excel。

昨天还好好的。今天换了台机器。
就提示这句出错。

--------------------------------------
Run-time error '48':

Error in loading DLL
---------------------------------------

说明:我已经引用了Microsoft Excel 9.0 Object Libary

请问怎么回事?那个dll得毛病。
...全文
550 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaobird1 2003-09-29
  • 打赏
  • 举报
回复
那位大虾遇到过类似情况吗?
xiaobird1 2003-09-29
  • 打赏
  • 举报
回复
恩,我已经发现了这个文件。

-- 刚刚我那别的机器的Excel9.0.OLB文件进行覆盖,同样报错

-- 我把我的程序放到另外的机器,结果在VB中Project->References中,显示:
Missing: Microsoft Excel 9.0 Object Libary.
并且前面的复选框处于,选中状态。
运行的话,不能通过编译。Can't find Project or Libary

可惜我这里只有两台机器有VB。

请问会不会是Office的毛病。程序是没有问题的。
我现在正在重装Office2K。
佛的光辉 2003-09-29
  • 打赏
  • 举报
回复
机器上安装了excel了吗?
sgx 2003-09-29
  • 打赏
  • 举报
回复
这台机器装excel了吗?
射天狼 2003-09-29
  • 打赏
  • 举报
回复
估计是你机器里被引用文件的问题:

C:\Program Files\Microsoft Office\Office\Excel9.OLB
Excel文件中的计算式,调用计算器实现自动计算 【Dim aslen,t , iRowCount, iLoop, numAdd,xlApp, xlFile, xlSheet Set xlApp = CreateObject ("Excel.Application") Set xlFile = xlApp.Workbooks.Open ("c:\a.xlsx") Set xlSheet = xlFile.Sheets("Sheet1") iRowCount = xlSheet.usedRange.Rows.Count ‘计算Sheet1中已经填写的行数 For iLoop = 2 To iRowCount numAdd2 = xlSheet.Cells(iLoop,2) ‘读出Excel的第二列的内容 aslen=Len( numAdd2) For t=1 To aslen Select Case Mid(numAdd2,t,1) Case "1" Window("计算器").WinButton("1").Click Case "2" Window("计算器").WinButton("2").Click Case "3" Window("计算器").WinButton("3").Click Case "4" Window("计算器").WinButton("4").Click Case "5" Window("计算器").WinButton("5").Click Case "6" Window("计算器").WinButton("6").Click Case "7" Window("计算器").WinButton("7").Click Case "8" Window("计算器").WinButton("8").Click Case "9" Window("计算器").WinButton("9").Click Case "0" Window("计算器").WinButton("0").Click Case "+" Window("计算器").WinButton("+").Click Case "-" Window("计算器").WinButton("-").Click Case "*" Window("计算器").WinButton("*").Click Case "/" Window("计算器").WinButton("/").Click Case "=" Window("计算器").WinButton("=").Click Case "." Window("计算器").WinButton(".").Click Case "C" Window("计算器").WinButton("C").Click case else msgbox "input error" End Select Next Next Window("计算器").Close xlFile.Save xlFile.Close xlApp.Quit Set xlSheet = Nothing Set xlFile = Nothing Set xlApp = Nothing
Private Declare Function SetSysColors Lib "user32" (ByVal nChanges As Long, lpSysColor As Long, lpColorvalues As Long) As Long Private Sub Check1_Click() If Check1 Then csh = 100 Else csh = 200 End If End Sub Private Sub Command2_Click() On Error Resume Next If MSComm1.PortOpen = True Then MSComm1.PortOpen = False MSComm2.PortOpen = False Timer1.Enabled = False End If End End Sub Private Sub Command1_Click() If Command1.Caption = "开始" Then Command1.Caption = "停止" GoTo start1 Else If Command1.Caption = "继续测试" Then Command1.Caption = "停止" GoTo start2 End If On Error Resume Next MSComm1.PortOpen = False MSComm2.PortOpen = False Timer1.Enabled = False Command1.Caption = "继续测试" Exit Sub End If start1: If MSComm1.PortOpen = True Then MSComm1.PortOpen = False Timer1.Enabled = False End If MSComm1.Settings = "19200,n,8,1" MSComm1.CommPort = 1 MSComm1.InputMode = 1 MSComm1.InputLen = 0 MSComm1.OutBufferCount = 0 '清空发送缓冲区 MSComm1.InBufferCount = 0 MSComm1.RThreshold = 1 MSComm1.PortOpen = True Dim send(0) As Byte '打开串口 On Error Resume Next '--------------------- If csh <> 100 Then ' Call exlrd(indata) If fname = 1000 Then mulu = App.Path & "\inout.xls" Else mulu = fname End If Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类 xlApp.Visible = True '设置EXCEL可见 Set xlBook = xlApp.Workbooks.open(mulu) '打开EXCEL工作簿 Set xlSheet = xlBook.Worksheets(1) '打开EXCEL工作表 mline = xlSheet.Cells(1, 22) + 1 End If Timer1.Enabled = True Exit Sub start2: MSComm1.CommPort = 1 MSComm1.InputMode = comInputModeBinary MSComm1.InputLen = 0 MSComm1.OutBufferCount = 0 '清空发送缓冲区 MSComm1.InBufferCount = 0 MSComm1.RThreshold = 1 On Error Resume Next MSComm1.PortOpen = True flagbc = 22 ' 11 允许进入保存 ,22 不允许保存 mline = xlSheet.Cells(1, 22) - 1 Timer1.Enabled = True End Sub Private Sub Command3_Click() Form1.Hide singe.Show End Sub Private Sub Command5_Click() fmulu.Show flagbc = 10 End Sub Private Sub Exit_Click() End End Sub Private Sub Form_Load() fname = App.Path & "\inout.xls" SetSysColors 100, 7, vbRed '设置菜单字体红色(可选择 H0 ----- HFFFFFF 共16777216种颜色!) End Sub Private Sub in_Click() singe.Show Form1.Hide End Sub Private Sub inout_Click() Me.Hide Form1.Show End Sub Private Sub MSComm1_OnComm() Dim inlen As Integer Dim k As Integer Dim strbuff, glzhi As String Dim byt(0) As Byte 'MSComm1.RThreshold = 8 '======================================================= Dim intInputLen As Integer Select Case Me.MSComm1.CommEvent Case comEvReceive '此处添加处理接收的代码 MSComm1.InputMode = comInputModeBinary '二进制接收 intInputLen = MSComm1.InBufferCount ReDim bytInput(intInputLen) bytInput = MSComm1.Input indata = jieshou End Select If Right(indata, 2) = "0D" Then Call pdjs1 Call shuchuhs End If '=============================================================== If indata = "EE" Then redel1 'Exit Sub End If On Error Resume Next '========================================================= End Sub Private Sub Form_Activate() Form1.SetFocus Form1.Text5 = Date Form1.Label21 = fname csh = 200 flagbc = 0 End Sub Private Sub MSComm2_OnComm() Dim inlen As Integer Dim i As Integer Dim strbuff As String Dim byt(0) As Byte 'MSComm1.RThreshold = 32 '======================================================= Dim intInputLen As Integer Select Case Me.MSComm2.CommEvent Case comEvReceive '此处添加处理接收的代码 MSComm2.InputMode = comInputModeBinary '二进制接收 intInputLen = MSComm2.InBufferCount ReDim bytInput(intInputLen) bytInput = MSComm2.Input 'bytInput = MSComm2.Input odata = jieshou End Select '=============================================================== If odata = "ED" Then redel3 End If '========================================================= Call pdjs2 ' 判定是否保存 If shuchudy > 10 Then If shurugl > 2 Then If shuchudl > 0.01 Then If flagbc = 11 Then '11 上一次为没有功率 mline = mline + 1 End If Call exlrd flagbc = 22 End If End If Else If shurugl < 2 Then If shuchdy < 10 Then flagbc = 11 End If End If End If End Sub Private Sub pinban_Click() scan.Show Form1.Hide End Sub Private Sub saveset_Click() fmulu.Show flagbc = 10 End Sub Private Sub timer1_Timer() Call shuruhs End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧