Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:[求助]读取excel时,如何判断某一个单元格是合并的?

1楼
moseser 发表于:2023/11/26 18:55:00
读取excel时,如何判断某一个单元格是合并的?并判断是哪几个位置的单元格合并的?
2楼
有点蓝 发表于:2023/11/26 19:58:00
比如:

Dim t As Table = Tables("表A")
Dim r1 As C1.Win.C1FlexGrid.CellRange = t.Grid.GetMergedRange(t.RowSel + 1, t.ColSel + 1)
If r1.IsSingleCell Then
    Output.Show("没合并")
Else
    Output.Show(r1.r1) '首行
    Output.Show(r1.r2) '末行
    Output.Show(r1.c1) '左列
    Output.Show(r1.c2) '右列
End If 

3楼
moseser 发表于:2023/11/27 10:50:00
不是对软件里面的表格,而是对即将要导入的excel 表格分析,如果是合并的话,我想着提前处理下
4楼
有点蓝 发表于:2023/11/27 11:04:00
需要使用vbs判断:http://www.foxtable.com/webhelp/topics/2121.htm

  • Merge

    合并单元格。
    利用Merge方法,或将MergeCells属性设置为True,都可以合并单元格。如:

    Dim App As New MSExcel.Application
    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
    Dim Rg As MSExcel.Range = Ws.Range("A1:D10")
    App.DisplayAlerts = False '加上此行可禁止弹出合并前的提示
    Rg.Merge  '合并指定区域的单元格
    'Rg.MergeCells = True '用这种方式也可以合并
    App.Visible = True
     
  • UnMerge

    取消合并单元格。
    利用UnMerge方法,或将MergeCells属性设置为False,可将已经合并的单元格重新分解为独立的单元格。
    如下面的代码就是先利用MergeArea属性判断某个单元格是否为合并单元格的一部分,然后再进行取消:

    Dim App As New MSExcel.Application
    Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
    Dim Rg As MSExcel.Range = Ws.Range("A1")
    If Rg.MergeArea.Address = Rg.Address Then
        MessageBox.Show("该单元格区域并不是合并后的单元格! ")
    Else
        App.DisplayAlerts = False   '加上此行可禁止弹出合并前的提示
        Rg.UnMerge  '取消合并
        'Rg.MergeCells = False  '用这种方式也可以取消
    End If
    App.Visible = True
共4 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02734 s, 2 queries.