DBF文件输出到WORD
来源:互联网 发布:网页美工设计培训价格 编辑:程序博客网 时间:2024/05/01 02:38
Private i As Integer
Private MacroName As String
Private WordApp As Word.Application
Private doc As Word.Document
Private se1 As Word.Selection
Private db As Database
Private rs As Recordset
Private Sub cmdAdd_Click()
Dim sTmp As String
sTmp = InputBox("输入要添加的新项目:")
If Len(sTmp) = 0 Then Exit Sub
lstItems.AddItem sTmp
End Sub
Private Sub cmdDelete_Click()
If lstItems.ListIndex > -1 Then
If MsgBox("删除 '" & lstItems.Text & "'?", vbQuestion + vbYesNo) = vbYes Then
lstItems.RemoveItem lstItems.ListIndex
End If
End If
End Sub
Private Sub cmdUp_Click()
On Error Resume Next
Dim nItem As Integer
With lstItems
If .ListIndex < 0 Then Exit Sub
nItem = .ListIndex
If nItem = 0 Then Exit Sub '不能将第一个项目向上移动
'向上移动项目
.AddItem .Text, nItem - 1
'删除旧项目
.RemoveItem nItem + 1
'选择刚刚移动的项目
.Selected(nItem - 1) = True
End With
End Sub
Private Sub cmdDown_Click()
On Error Resume Next
Dim nItem As Integer
With lstItems
If .ListIndex < 0 Then Exit Sub
nItem = .ListIndex
If nItem = .ListCount - 1 Then Exit Sub '不能将最后的项目向下移动
'向下移动项目
.AddItem .Text, nItem + 2
'删除旧的项目
.RemoveItem nItem
'选择刚刚移动的项目
.Selected(nItem + 1) = True
End With
End Sub
Private Sub lstItems_DragDrop(Source As Control, X As Single, Y As Single)
Dim i As Integer
Dim nID As Integer
Dim sTmp As String
If Source.Name <> "lstItems" Then Exit Sub
If lstItems.ListCount = 0 Then Exit Sub
With lstItems
i = (Y / TextHeight("A")) + .TopIndex
If i = .ListIndex Then
'将它放在它自己的上面
Exit Sub
End If
If i > .ListCount - 1 Then i = .ListCount - 1
nID = .ListIndex
sTmp = .Text
If (nID > -1) Then
sTmp = .Text
.RemoveItem nID
.AddItem sTmp, i
.ListIndex = .NewIndex
End If
End With
SetListButtons
End Sub
Sub lstItems_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbLeftButton Then lstItems.Drag
End Sub
Private Sub lstItems_Click()
SetListButtons
End Sub
Sub SetListButtons()
Dim i As Integer
i = lstItems.ListIndex
'设置移动按钮的状态
cmdUp.Enabled = (i > 0)
cmdDown.Enabled = ((i > -1) And (i < (lstItems.ListCount - 1)))
cmdDelete.Enabled = (i > -1)
End Sub
Private Sub Command1_Click()
With dlgCommonDialog
Label4.Caption = .InitDir
.DialogTitle = "打开dbf文件"
.CancelError = False
'ToDo: 设置 common dialog 控件的标志和属性
.Filter = "所有dbf文件 (*.dbf)|*.dbf"
.ShowOpen
If Len(.FileName) = 0 Then
Exit Sub
End If
sfile = .FileName
Label1.Caption = sfile
Label2.Caption = .FileTitle
Label3.Caption = Left(sfile, Len(sfile) - Len(.FileTitle) - 1)
Data1.Caption = .FileTitle
End With
' Data1.Database = Label3.Caption
Data1.DatabaseName = Label3.Caption
Data1.RecordSource = Label2.Caption
' On Error Resume Next
Data1.Refresh
' Form1.MSFlexGrid1.Refresh
Form1.DBGrid1.Refresh
Form1.Refresh
End Sub
Private Sub Command2_Click()
End
End Sub
Private Sub Command3_Click()
If Label2.Caption = "DbfFile:" Then
Call Command1_Click
End If
Set db = Data1.Database
Set rs = Data1.Recordset
Data1.Refresh
Set WordApp = New Word.Application
WordApp.Documents.Add
Set doc = WordApp.ActiveDocument
Set se1 = WordApp.Selection
With doc.PageSetup
.LineNumbering.Active = False
.Orientation = wdOrientLandscape
.TopMargin = CentimetersToPoints(2)
.BottomMargin = CentimetersToPoints(2)
.LeftMargin = CentimetersToPoints(2)
.RightMargin = CentimetersToPoints(2)
.Gutter = CentimetersToPoints(0)
.HeaderDistance = CentimetersToPoints(1.5)
.FooterDistance = CentimetersToPoints(1.75)
.PageWidth = CentimetersToPoints(29.7)
.PageHeight = CentimetersToPoints(21)
.FirstPageTray = wdPrinterDefaultBin
.OtherPagesTray = wdPrinterDefaultBin
.SectionStart = wdSectionNewPage
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.VerticalAlignment = wdAlignVerticalTop
.SuppressEndnotes = False
.MirrorMargins = False
.TwoPagesOnOne = False
.GutterPos = wdGutterPosLeft
.LayoutMode = wdLayoutModeLineGrid
End With
se1.TypeText Text:="20" & CStr(Date) & " " & CStr(Time())
'doc.Tables.Add Range:=se1.Range, numrows:=1, numcolumns:=List2.ListCount
doc.Tables.Add Range:=se1.Range, numrows:=1, numcolumns:=rs.Fields.Count
For i = 0 To rs.Fields.Count - 1
Screen.MousePointer = 11
'se1.TypeText Text:=rs.Fields(i).Name
se1.TypeText Text:=rs.Fields(i).Name
se1.MoveRight unit:=12
Next
'se1.TypeText Text:="产品名称"
'se1.MoveRight unit:=12
Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
On Error Resume Next
se1.TypeText Text:=rs.Fields(i).Value
' se1.TypeText Text:=rs.Fields(rs.Fields(i)).Value
se1.MoveRight unit:=12
Next
'se1.TypeText Text:=rs!产品名称
'se1.MoveRight unit:=12
'se1.TypeText Text:=rs!中止
'se1.MoveRight unit:=12
rs.MoveNext
Loop
WordApp.Run MacroName:="AutoFitContent"
se1.InsertBreak
se1.Delete Count:=rs.Fields.Count
se1.Sections(1).Footers(1).PageNumbers.Add PageNumberAlignment:= _
wdAlignPageNumberRight, FirstPage:=True
WordApp.Visible = True
' WordApp.Run MacroName:="InsertDateTime"
Set WordApp = Nothing
Screen.MousePointer = 1
'data1.Recordset.Fields()
End Sub
Private Sub exit_Click()
Close
End
End Sub
Private Sub open_Click()
Call Command1_Click
End Sub
- DBF文件输出到WORD
- 数据输出到WORD文件或EXCEL文件的路
- DBF文件导入到oracle尝试
- dbf文件导入到SqlServer中
- 将DBF文件导入到其它数据库
- 读取oracle数据表,导出到DBF文件。
- Oracle dbf文件转移到其他目录
- C#封装DBF文件到DataTable
- WinFrm导出数据到dbf文件
- 如何在ASPX中将word文件输出到客户端浏览器
- c#读取dbf文件并输出某一列
- 如何输出表格到word
- 怎么把DBF文件导入到SQL SERVER 2000中?
- C# 读取dbf文件中的数据到datatable中
- JAVA解析DBF文件导入到Oracle数据库中
- ado.net读取dbf文件内容到DataTable
- c#实现将DataTable中的数据导出到DBF文件
- ASP输出WOrd、Excel文件!
- Delphi+Word解决方案参考
- 用Delphi编写VxD设备驱动程序
- 用Delphi制作中国式报表
- 用Delphi + DirectX开发简单RPG游戏
- Delphi使用VB编写的ActiveX控件全攻略
- DBF文件输出到WORD
- C++技术技巧之一
- C++技术技巧之二
- C++技巧之三
- C++技巧之四
- C++技巧之五
- C++技巧之六
- XML名词(不看要后悔啊)
- Delphi开发单机瘦数据库程序要点