请大家告诉我一些关于DELPHI对OFFICE(WORD,EXCL等)进行编程的资料。(50分)

  • 主题发起人 主题发起人 xxwxd
  • 开始时间 开始时间
X

xxwxd

Unregistered / Unconfirmed
GUEST, unregistred user!
请大家告诉我一些关于DELPHI对OFFICE(WORD,EXCL等)进行编程的资料。
网址
书籍
技术文档
 
OFFICE编程主要是对COM的使用,MSDN是最有用的,其次是OFFICE的帮助(是对VB的,
DELPHI也差不多)
DELPHI有自带的例子
 
资料的话,yzhshi大虾的贴子就有.当然是用delphi的了.
你用发贴富翁yzhshi检索就有了.
 
继续等待
 
还有人回答吗?
 
http://www.djpate.freeserve.co.uk/Automation.htm
 
网上有很多,你用全文检索,我就是从DFW找的,我也贴过不少帖子。
 
delphi5.0程序设计数据库应用实务篇
魏志强……等
中国铁道出版社
 
VB5.0调用Office97技巧
作者:袁津生
Visual Basic 5.0具有简单、易学等特点,深受初学者的欢迎,但也有一些不如人意的地方。例如,不能像Word 97那样进行拼写检查,不能像Excel 97那样具有很多的函数。如果我们能将Word 97和Exce l97的功能使用在Visual Basic 5.0中,就可以使VB达到锦上添花的目的。

  我们知道所有Office 97 应用程序都提供了ActiveX对象,我们可以在Visual Basic 5.0中使用它们。

  调用Word 97

  要想在VB中调用Word 97,首先要打开VB的“工程”菜单中的“引用”项目,并在该项目对话框中选定“Microsoft Word 8.0 Object Library”就可以了。

  下面我们举例说明调用Word 97中的“拼写检查”和“单词统计”功能。首先新建一个工程并在窗体上放置一个TextBox控件和两个CommandButton控件,然后添入如下的代码:

   Option Explicit

   Dim Doc As New Document

   Dim Visi As Boolean

  图1 调用Word 97

   ′拼写检查

   Private Sub Command1-Click()

   Form1.Caption = “拼写检查"

   Doc.Range.Text = Text1

  ′确定范围

   Doc.Application.Visible = True ′将Word 97变为可见

   AppActivate Doc.Application.Caption

  ′激活Word 97

   Doc.Range.CheckSpelling

  ′拼写检查

   Text1 = Doc.Range.Text

   Text1 = Left(Text1, Len(Text1) - 1)

   AppActivate Caption

   End Sub

   ′统计单词数

   Private Sub Command2-Click()

   Dim Dlg As Word.Dialog

   Doc.Range = Text1.Text

   Set Dlg = Doc.Application.Dialogs

   (wdDialogDocumentStatistics)

   Dlg.Execute ′统计单词和字符

   Form1.Caption =“单词数:" & Str(Dlg.Words) & “词"

   & Str(Dlg.Characters) & “字符" ′显示统计结果

   End Sub

   Private Sub Form-Load()

   Form1.Caption =“调用Word 97"

   Text1.Text = “"

   Command1.Caption = “拼写检查"

   Command2.Caption = “统计单词"

   ′使应用程序可见

   Visi = Doc.Application.Visible

   End Sub

   ′关闭应用程序

   Private Sub Form-Unload(Cancel As Integer)

   If Visi Then ′关闭文件

   Doc.Close savechanges:=False

   Else

   Doc.Application.Quit savechanges:=False ′关闭 Word 97

   End If

   End Sub

   运行中的窗体如图1所示。



  图2 调用Excel 97

  调用Excel 97

  使用Excel Sheet对象的技术可以处理可变数量的数据,并将结果最后送到你的Visual Basic 应用程序中。例子如下:

  新建一个工程并在新建的窗体上放置两个TextBox控件和一个CommandButton控件及六个Label控件。建设中的窗体如图2所示。

  程序代码如下:

   Option Explicit

   Private Sub Command1-Click()

   Dim xObject As Object

   ′调用Excel 97

   Set xObject = CreateObject(“Excel.Sheet")

   Set xObject = xObject.Application.ActiveWorkbook.ActiveSheet

   xObject.Range(“A1").Value = Text1.Text ′将数值送入Excel 97的A1单元格

   xObject.Range(“A2").Value = Text2.Text ′将数值送入Excel 97的A2单元格

   xObject.Range(“A3").Formula = “=MAX(A1,A2)" ′将最大值送入A3单元格

   xObject.Range(“A4").Formula = “=ATAN(A1/A2)*180/PI()" ′将反正切值送入A4单元格

   ′显示计算的结果

   Label1.Caption = xObject.Range(“A3").Value

   Label2.Caption = xObject.Range(“A4").Value

   Set xObject = Nothing

   End Sub

   Private Sub Form_Load()

   Text1.Text = “"

  Text2.Text = “"

  Label1.Caption = “"

  Label2.Caption = “"

  End Sub

  该程序的作用是:首先在两个文本框(Text1和Text2)输入数值并分别将输入的数值送入Excel 97的“A1”和“A2”单元格中,然后用Excel 97中的“Max()”函数将计算的结果送入“A3” 单元格中;用反正切函数“ATAN()”进行计算并将结果送入“A4” 单元格中,最后输出。

VB编程乐园版权所有?,1999-2000
网页设计制作:LiZhiDong
如何將Excel的文件导入Access文件?
下面我已程序代码做成模块,只要导入必要之参数即可!

此一模块共有四个参数:
1、sSheetName:要导出资料的文件名称 (Sheet name),例如 Sheet1
2、sExcelPath:要导出资料的 Excel 档案路径名称 (Workbook path),例如 C:/book1.xls
3、sAccessTable:要导入的 Access Table 名称,例如 TestTable
4、sAccessDBPath:要导入的 Access 档案路径名称,例如 C:/Test.mdb

在声明中加入以下:

Private Sub ExportExcelSheetToAccess(sSheetName As String, sExcelPath As String, sAccessTable As String, sAccessDBPath As String)
Dim db As Database
Dim rs As Recordset
Set db = OpenDatabase(sExcelPath, True, False, "Excel 5.0")
Call db.Execute("Select * into [;database=" & sAccessDBPath & "]." & sAccessTable & " FROM [" & sSheetName & "$]")
MsgBox "Table exported successfully.", vbInformation, "Yams"
End Sub
使用范例如下:將 C:/book1.xls 中的 Sheet1 导入 C:/Test.mdb 成为 TestTable

ExportExcelSheetToAccess "Sheet1", "C:/book1.xls", "TestTable", "C:/Test.mdb"

VB编程乐园版权所有?,1999-2000
网页设计制作:LiZhiDong


 
多人接受答案了。
 
后退
顶部