📄 机型.frm
字号:
VERSION 5.00
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Object = "{0ECD9B60-23AA-11D0-B351-00A0C9055D8E}#6.0#0"; "MSHFLXGD.OCX"
Begin VB.Form xlsloadin
BackColor = &H80000005&
Caption = "导入文件"
ClientHeight = 8250
ClientLeft = 60
ClientTop = 450
ClientWidth = 10770
Icon = "机型.frx":0000
LinkTopic = "Form1"
ScaleHeight = 8250
ScaleWidth = 10770
StartUpPosition = 3 '窗口缺省
Begin MSComctlLib.ProgressBar ProgressBar1
Height = 375
Left = 2880
TabIndex = 2
Top = 2040
Width = 4935
_ExtentX = 8705
_ExtentY = 661
_Version = 393216
Appearance = 1
End
Begin MSComctlLib.StatusBar StatusBar1
Align = 2 'Align Bottom
Height = 375
Left = 0
TabIndex = 1
Top = 7875
Width = 10770
_ExtentX = 18997
_ExtentY = 661
_Version = 393216
BeginProperty Panels {8E3867A5-8586-11D1-B16A-00C0F0283628}
NumPanels = 4
BeginProperty Panel1 {8E3867AB-8586-11D1-B16A-00C0F0283628}
EndProperty
BeginProperty Panel2 {8E3867AB-8586-11D1-B16A-00C0F0283628}
AutoSize = 1
Object.Width = 5265
EndProperty
BeginProperty Panel3 {8E3867AB-8586-11D1-B16A-00C0F0283628}
Style = 6
Alignment = 1
AutoSize = 1
Object.Width = 5265
TextSave = "2006-11-27"
EndProperty
BeginProperty Panel4 {8E3867AB-8586-11D1-B16A-00C0F0283628}
Style = 5
Alignment = 1
AutoSize = 1
Object.Width = 5265
TextSave = "14:05"
EndProperty
EndProperty
End
Begin MSHierarchicalFlexGridLib.MSHFlexGrid partGrid
Height = 9015
Left = -240
TabIndex = 0
Top = 0
Width = 15255
_ExtentX = 26908
_ExtentY = 15901
_Version = 393216
_NumberOfBands = 1
_Band(0).Cols = 2
End
End
Attribute VB_Name = "xlsloadin"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Public Sub unitpartShowGrid(ByVal Recordset As ADODB.Recordset, ByVal flexGrid As MSHFlexGrid)
Dim i As Integer
With flexGrid
.SelectionMode = flexSelectionByRow
.ScrollBars = flexScrollBarBoth
.FillStyle = flexFillSingle
.ScrollTrack = True
.AllowUserResizing = flexResizeColumns
.TextMatrix(0, 1) = "阶层"
.TextMatrix(0, 2) = "部品番号"
.TextMatrix(0, 3) = "部品名称"
.TextMatrix(0, 4) = "图号"
.TextMatrix(0, 5) = "规格"
.TextMatrix(0, 6) = "数量"
.TextMatrix(0, 7) = "单位"
.TextMatrix(0, 8) = "备注"
.ColWidth(0) = 1
.ColWidth(1) = 800
.ColWidth(2) = 2500
.ColWidth(3) = 3500
.ColWidth(4) = 2500
.ColWidth(5) = 4500
.ColWidth(6) = 1000
.ColWidth(7) = 1000
.ColWidth(8) = 2000
.ColAlignment(1) = 2
.ColAlignment(2) = 2
.ColAlignment(3) = 2 '水平居中,垂直居中对齐
.ColAlignment(4) = 4
.ColAlignment(5) = 4
.ColAlignment(6) = 4
.ColAlignment(7) = 4
.ColAlignment(8) = 4
End With
For i = 1 To flexGrid.Rows - 1
flexGrid.Row = i
For j = 1 To flexGrid.Cols - 1
flexGrid.Col = j
If (flexGrid.Row Mod 2) = 0 Then
flexGrid.CellBackColor = &HE0E0E0
Else
flexGrid.CellBackColor = vbWhite
End If
Next j
Next i
'flexGrid.Refresh
End Sub
Private Sub Form_Load()
Dim intable As String
MakeCenter xlsloadin
Me.Show
ProgressBar1.Visible = False
xlsloadin.StatusBar1.Panels.Item(1).Text = "导入机型"
'判断Excel表格是否正处于编辑模式
' If (Application.DataEntryMode = xlOn) Or _
'(Application.DataEntryMode = xlStrict) Then
' Application.DataEntryMode = xlOff
' End If
'Select Count(*) AS Qty FROM MSysObjects Where ((MSysObjects.Name) Like '表名')
' cat.Tables.delete Trim(strEmpsecondFieldValue)
intable = "part"
If TableExists(intable, cn) = True Then
If MsgBox("该表单名称已被使用,是否删除已有库内表单?", vbQuestion + vbYesNo, "警告") = vbYes Then '删除
cat.Tables.DELETE intable
ProgressBar1.Visible = True
Move (Screen.Width - Width) \ 2, (Screen.Height - Height) \ 2
Call Waitfor(5)
ProgressBar1.Visible = False
Else
Exit Sub
End If
End If
Dim rsintable As New ADODB.Recordset
rsintable.CursorLocation = adUseClient
cn.Execute ("SELECT * into [" & intable & "] FROM [excel 8.0;database=" & xlsfile & "].[Sheet1$]")
rsintable.CursorLocation = adUseClient
rsintable.open intable, cn, adOpenKeyset, adLockPessimistic
Set partGrid.DataSource = rsintable
Call unitpartShowGrid(rsintable, partGrid)
'Call InipartGrid(partGrid)
'Call ShowpartData(rsintable, partGrid)
xlsloadin.StatusBar1.Panels(2).Text = "表单总数: " + Trim(rsintable.RecordCount)
End Sub
Private Sub Waitfor(Delay As Single) '延时过程,Delay 单位约为 1 秒
Dim StartTime As Single
StartTime = Timer
Do Until (Timer - StartTime) > Delay
ProgressBar1.Value = 100 * (Timer - StartTime) / Delay
Loop
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -