用GetOpenFilename直接打开Excel工作表,导入VSFlexGrid 控件实例

'Const APPNAME = "VSFlexGrid8 用GetOpenFilename打开Excel工作表,直接存入VSFlexGrid 控件 "
Option Explicit
Dim sheet%
Dim sFileName As String       '从FileName中提取的文件名

Private Sub UserForm_Initialize()
    fg.AllowUserResizing = flexResizeBoth
    fg.MergeCells = flexMergeSpill
    fg.ExtendLastCol = True
End Sub
Private Sub btnLoad_Click()
    Dim FileName As Variant, i%
     '打开文件对话框返回的文件名,是一个全路径文件名,其值也可能是False,因此类型为Variant
   ' Dim sFileName As String                      ' 从FileName中提取的文件名
    Dim sPathName As String                     ' 从FileName中提取的路径名
    Dim aFile As Variant                                ' 数组,提取文件名sFileName时使用
    Dim sht As Worksheet                            ' 存储文件路径名和文件名的工作表
    Set sht = ThisWorkbook.Worksheets("Sheet1")  '把sht指向当前工作簿的sheet1工作表
    FileName = Application.GetOpenFilename("Excel 文件 (*.xls),*.xls")
    '调用Windows打开文件对话框
    If FileName <> False Then                       '如果未按“取消”键
        aFile = Split(FileName, "\")                '在全路径中,以“\”为分隔符,分成数据
        sPathName = aFile(0)                        '取盘符
        For i = 1 To UBound(aFile) - 1              '循环合成路径名
            sPathName = sPathName & "\" & aFile(i)
        Next
        sFileName = aFile(UBound(aFile))             '数组的最后一个元素为文件名
        sht.Cells(1, 2).Value = sPathName            '保存路径名
        sht.Cells(2, 2).Value = sFileName            '保存文件名
    End If
    'LoadGrid()   载入网格          O.A FileName, 0 至 6[,True(含固定行列)|False]
    fg.LoadGrid sFileName, 6
    sheet = 0
    btnNextSheet.Enabled = True

End Sub

Private Sub btnNextSheet_Click()
    sheet = sheet + 1
    On Error Resume Next
    'fg.LoadGrid dlg.FileName, flexFileExcel, sheet
    fg.LoadGrid sFileName, 6, sheet
    If Err <> 0 Then
        MsgBox "No More Sheets"
        sheet = 0
        btnNextSheet.Enabled = False
    End If
    On Error GoTo 0
End Sub

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值