akdrafter 发表于 2006-11-5 02:16:18

回到马鞍上...Excel, Spanner, VBA solution...F1

大家好,
又回到马鞍上了。有些老板……胆小鬼,有些工程师讨厌你告诉他们错误。哎呀,等一下,我错了…我是电脑设计师。该死,忘了那部分。哦,好吧,生活,学习,并朝着更大更好的方向前进
我过去曾使用(wfcadtools_dot_com)的扳手导入和修改excel电子表格,效果非常好。我现在有一些2006版的用户,很快2007&2008版的用户说他们在2006年不能使用扳手。不知道为什么,我也没有机会去探究原因。我希望也许有人知道这个问题,如果是的话,如果他们找到了解决办法。我只是在周五下午才发现这一点,如果我不能把它付诸实施,我可能会寻求另一种选择。希望它不会花费buko dollar$。我已经查看了wfcadtools_dot_com网站,似乎只有2004年才有可用版本。有人知道这方面的信息吗?是否有更好的低成本/无成本替代excel电子表格导入/修改等。
提前感谢。
**** Hidden Message *****

Dnereb 发表于 2006-11-5 15:17:03

一旦你知道如何以一个体面的方式打开te excel后期绑定,并再次很好地关闭它,你就可以通过VBA或VB,C++和其他语言来做任何事情。
导入和导出数据可以通过这种方式完成,而无需支付软件费用,但这会消耗时间。
基础知识,在飞行中:
Option Explicit
Const WorkBookName = "TestThis.Xls"
Const ImportPath = "C:\Test\"
Const DataSheet = "ImportDataSheet"
Sub ExclHandler()
Dim Excl As Excel.Application
Dim Wb As Excel.Workbook
Dim Ws As Excel.Worksheet
Dim ExcelWasOpen As Boolean
Dim WorkBookFound As Boolean
'Get an instance of excel if it is open that one to save resources.
On Error GoTo NoExcelOpen
ExcelWasOpen = True
Set Excl = GetObject(, "Excel.Application")
On Error GoTo 0
'Search for the Workbook if Excel was already open (it might be)
If ExcelWasOpen Then
    For Each Wb In Excl.Workbooks
      If Wb.Name = WorkBookName Then
            WorkBookFound = True
            Exit For
      End If
    Next
    If Not WorkBookFound Then
      Set Wb = Excl.Workbooks.Open(ImportPath & WorkBookName)
    End If
Else
    Set Wb = Excl.Workbooks.Open(ImportPath & WorkBookName)
End If
Set Ws = Wb.Sheets(DataSheet)
'Do whatever you want read or write to it.
'make it look nice
'to prove my point write something
Ws.Cells(1, 1).Value = "Driesign.nl"
'and read it into a msgbox
MsgBox Ws.Cells(1, 1).Value, vbCritical, "Stupid Test"
'............
'............
'............
'............
'............
'finish by cleaning up
Set Ws = Nothing
If workbookwasopen Then
    Wb.Save
Else
    Wb.Close True, "Optional Alternative Filename.xls"
End If
Set Wb = Nothing
If Not ExcelWasOpen Then
    Excl.Quit
End If
Set Excl = Nothing
Exit Sub
NoExcelOpen:
ExcelWasOpen = False
Set Excl = CreateObject("Excel.Application")
Resume Next
End Sub
玩得开心.....

Murph 发表于 2006-11-6 05:13:11

如果Angelfire离开了我的网站,我可以把你带到那里。
用您的电子邮件地址给我写一个PM,我可以向您发送AutosXeduLe。
它只做您想要的,但是,当进行更改时,用户必须手动更新(按
Excel中的按钮)。

Dnereb 发表于 2006-11-9 15:48:56

我给你的methode的乐趣在于随时更新和控制excell
但要做到这一点,您需要参与vb(a)
页: [1]
查看完整版本: 回到马鞍上...Excel, Spanner, VBA solution...F1