📄 frmzhxd.frm
字号:
VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form FrmSjzhxd
BorderStyle = 1 'Fixed Single
Caption = "数据导出向导"
ClientHeight = 5625
ClientLeft = 45
ClientTop = 435
ClientWidth = 6960
Icon = "FrmZhxd.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 5625
ScaleWidth = 6960
StartUpPosition = 1 '所有者中心
Begin VB.PictureBox picWizard
BackColor = &H00FFFFFF&
BorderStyle = 0 'None
Height = 5620
Index = 0
Left = 0
Picture = "FrmZhxd.frx":030A
ScaleHeight = 5625
ScaleWidth = 6975
TabIndex = 0
Top = 0
Width = 6975
Begin VB.Frame Frame4
BackColor = &H80000009&
Caption = "SQL 语句:"
Height = 615
Left = 2640
TabIndex = 17
Top = 1920
Visible = 0 'False
Width = 4215
Begin VB.TextBox SqlTxt
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H00008000&
Height = 315
Left = 120
TabIndex = 18
Top = 180
Width = 3975
End
End
Begin VB.Frame Frame3
BackColor = &H80000009&
Caption = "目标文件:"
Height = 615
Left = 2640
TabIndex = 14
Top = 3840
Visible = 0 'False
Width = 4215
Begin VB.CommandButton Command2
Caption = "..."
Height = 255
Left = 3600
TabIndex = 16
Top = 240
Width = 495
End
Begin VB.TextBox OutTxt
BeginProperty Font
Name = "宋体"
Size = 10.5
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 120
TabIndex = 15
Text = "C:\数据表1.xls"
Top = 240
Width = 3375
End
End
Begin VB.Frame Frame2
BackColor = &H80000009&
Caption = "部分数据库列表"
Height = 1815
Left = 2760
TabIndex = 12
Top = 1440
Visible = 0 'False
Width = 2415
Begin VB.ListBox List1
Height = 1500
ItemData = "FrmZhxd.frx":2DD9C
Left = 120
List = "FrmZhxd.frx":2DDB8
TabIndex = 13
Top = 240
Width = 2175
End
End
Begin VB.Frame Frame1
BackColor = &H80000009&
Caption = "数据生成方式"
Height = 1215
Left = 2760
TabIndex = 6
Top = 1440
Width = 1695
Begin VB.OptionButton Option2
BackColor = &H80000009&
Caption = "手动"
Height = 375
Left = 360
TabIndex = 8
Top = 720
Width = 735
End
Begin VB.OptionButton Option1
BackColor = &H80000009&
Caption = "自动"
Height = 375
Left = 360
TabIndex = 7
Top = 360
Width = 735
End
End
Begin VB.CommandButton cmdPrevious
Caption = "< 上一步"
Enabled = 0 'False
Height = 375
Left = 2640
TabIndex = 4
Top = 5040
Width = 1215
End
Begin VB.CommandButton cmdFinish
Caption = "生成"
Default = -1 'True
Enabled = 0 'False
Height = 375
Left = 5520
TabIndex = 3
Top = 5040
Width = 1215
End
Begin VB.CommandButton cmdNext
Caption = "下一步>"
Height = 375
Left = 4080
TabIndex = 2
Top = 5040
Width = 1215
End
Begin VB.CommandButton cmdCancel
Caption = "取消"
Height = 375
Left = 480
TabIndex = 1
Top = 5040
Width = 1215
End
Begin VB.Label Label3
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "(2)请输入SQL导出语句"
BeginProperty Font
Name = "楷体_GB2312"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 240
Left = 2760
TabIndex = 11
Top = 360
Visible = 0 'False
Width = 2595
End
Begin VB.Label Label2
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "(2)请选择需导出的数据表"
BeginProperty Font
Name = "楷体_GB2312"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 240
Left = 2760
TabIndex = 10
Top = 360
Visible = 0 'False
Width = 2955
End
Begin VB.Label Label1
AutoSize = -1 'True
BackStyle = 0 'Transparent
Caption = "(1)请选择数据生成方式"
BeginProperty Font
Name = "楷体_GB2312"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 240
Left = 2760
TabIndex = 9
Top = 360
Width = 2715
End
Begin VB.Label Label5
BackStyle = 0 'Transparent
Caption = " 此向导实现本系统任何数据向Excel数据格式的无缝转换!"
Height = 495
Left = 2880
TabIndex = 5
Top = 960
Width = 3405
End
End
Begin MSComDlg.CommonDialog Cdlg
Left = 0
Top = 0
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
End
Attribute VB_Name = "FrmSjzhxd"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Dim rs As ADODB.Recordset
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub cmdFinish_Click()
On Error GoTo errs
Dim ExcelApp As Excel.Application
Dim ExcelBook As Excel.Workbook
Dim ExcelSheet As Excel.Worksheet
If Label2.Visible = True Then
Set ExcelApp = New Excel.Application
ExcelApp.Visible = False
Set ExcelBook = ExcelApp.Workbooks.Add
Set ExcelSheet = ExcelBook.Worksheets.Item(1)
If List1.ListIndex = -1 Then
MsgBox "请选择输出数据表!", 16, "严重错误"
Exit Sub
End If
rs.Open List1.Text, Con, , adLockPessimistic, adCmdTable
RecordsetToExcel rs, ExcelSheet
If OutTxt.Text = "" Then
MsgBox "请指定输出文件位置和文件名!", 16, "严重错误"
Exit Sub
End If
On Error GoTo ErrSave
ExcelBook.Close True, OutTxt.Text
MsgBox "输出成功!文件位于" & OutTxt.Text
rs.Close
Else
Set ExcelApp = New Excel.Application
ExcelApp.Visible = False
Set ExcelBook = ExcelApp.Workbooks.Add
Set ExcelSheet = ExcelBook.Worksheets.Item(1)
rs.Open SqlTxt.Text, Con, , adLockPessimistic, adCmdText
RecordsetToExcel rs, ExcelSheet
If OutTxt.Text = "" Then
MsgBox "请指定输出文件位置和文件名!", 16, "严重错误"
Exit Sub
End If
On Error GoTo ErrSave
ExcelBook.Close True, OutTxt.Text
MsgBox "输出成功!文件位于" & OutTxt.Text
rs.Close
End If
Exit Sub
errs:
MsgBox "Select 语句错误!", 16, "严重错误"
ExcelBook.Close False
Exit Sub
ErrSave:
MsgBox "输出错误!", 16, "严重错误"
End Sub
'纪录导出到Execl
Public Sub RecordsetToExcel(rs As ADODB.Recordset, excel_sheet As Excel.Worksheet)
Dim i As Long, j As Long
Dim excel_range As Excel.Range
Dim col_count As Long
If rs.RecordCount = 0 Then
Exit Sub
End If
Set excel_range = excel_sheet.Cells
col_count = rs.Fields.Count
For i = 0 To col_count - 1
excel_sheet.Cells(1, i + 1).Value = rs.Fields(i).Name
Next
excel_sheet.Range(excel_sheet.Cells(1, 1), _
excel_sheet.Cells(1, col_count)).Font.Bold = True
excel_sheet.Range("A2").CopyFromRecordset rs
End Sub
Private Sub cmdNext_Click()
If Option1.Value = True Then
Label1.Visible = False
Label2.Visible = True
Frame1.Visible = False
Frame2.Visible = True
Frame3.Visible = True
cmdNext.Enabled = False
cmdPrevious.Enabled = True
cmdFinish.Enabled = True
End If
If Option2.Value = True Then
Label1.Visible = False
Label3.Visible = True
Frame1.Visible = False
Frame3.Visible = True
Frame4.Visible = True
cmdNext.Enabled = False
cmdPrevious.Enabled = True
cmdFinish.Enabled = True
End If
End Sub
Private Sub cmdPrevious_Click()
Label1.Visible = True
Label2.Visible = False
Label3.Visible = False
Frame1.Visible = True
Frame2.Visible = False
Frame3.Visible = False
Frame4.Visible = False
cmdNext.Enabled = True
cmdPrevious.Enabled = False
cmdFinish.Enabled = False
End Sub
Private Sub Command2_Click()
Cdlg.DialogTitle = "另存为Excel文件:"
Cdlg.Filter = "Excel文件|*.Xls|所有文件|*.*"
Cdlg.ShowSave
If Cdlg.FileName = "" Then Exit Sub
OutTxt.Text = Cdlg.FileName
End Sub
Private Sub Form_Load()
Set rs = New ADODB.Recordset
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -