Rss & SiteMap

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

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

标题:word如何设置表格列宽和替换字符串

1楼
lxhmax 发表于:2024/9/2 16:39:00
    Dim doc = app.Documents.Open(fl)
    ' 在文档末尾插入一个 2 行 3 列 的表格
    Dim tbl = doc.Tables.Add(doc.Range(doc.Content.End), 2, 8)
    ' 填充表格单元格
    tbl.Cell(1, 1).Range.Text = "序号"
    tbl.Cell(1, 2).Range.Text = "区域"
    tbl.Cell(1, 8).Range.Text = "备注"
    ' 设置表格第一行的字体加粗
    tbl.Rows(1).Range.Font.Bold = True
    Dim i As Integer
    For i = 1 To tbl.Rows(1).Cells.Count
        tbl.Rows(1).Cells(i).Shading.BackgroundPatternColor = RGB(189, 214, 238) ' 浅灰色 (Light Gray)
    Next i

    ' 设置列宽及行高
    ' 替换指定字符串
    
    doc.save
    app.Visible = True
    app.quit
[此贴子已经被作者于2024/9/2 16:41:43编辑过]
2楼
有点蓝 发表于:2024/9/2 16:45:00
列宽:
tbl.Columns(2).Width = 100f

替换参考:
doc.Content.Find.Execute(FindText:="查找的文字", replacewith:="替换的文字", Replace:=2)
3楼
lxhmax 发表于:2024/9/2 16:55:00
老师,这个列宽的有问题,报错了未指定的错误 (异常来自 HRESULT:0x80004005 (E_FAIL))
还有行高怎么设置
4楼
有点蓝 发表于:2024/9/2 17:34:00
我测试没有问题

Dim app As New MSWord.Application
Try
    Dim doc = app.Documents.add
    doc.Tables.Add(Range:=app.Selection.Range, NumRows:=3, NumColumns:= 3)
    With app.Selection.Tables(1)
        .Rows(1).Height = 100 '行高
        .Columns(2).Width = 50 
    End With
    app.Visible = True
Catch ex As exception
    msgbox(ex.message)
    app.Quit
Finally
    
End Try
5楼
lxhmax 发表于:2024/9/2 17:59:00

FileSys.CopyFile(mb, fl,True)
'ShowAppWindow("wps",5)
Dim app As New MSWord.Application
Try
    Dim doc = app.Documents.Open(fl)
    Dim tbl = doc.Tables.Add(Range:=app.Selection.Range, NumRows:=3, NumColumns:= 8)
    '设置边框样式
    ' 设置表格边框样式
    With tbl.Borders
        .OutsideLineStyle = wdLineStyleSingle ' 设置外边框为单线
        .OutsideLineWidth = wdLineWidth050pt ' 设置外边框宽度为 0.5 磅
        .OutsideColor = RGB(0, 0, 0) ' 设置外边框颜色为黑色        
        .InsideLineStyle = wdLineStyleSingle ' 设置内边框为单线
        .InsideLineWidth = wdLineWidth025pt ' 设置内边框宽度为 0.25 磅
        .InsideColor = RGB(0, 0, 0) ' 设置内边框颜色为黑色
    End With
    ' 设置表格第一行的字体加粗
    tbl.Rows(1).Range.Font.Bold = True
    Dim i As Integer
    For i = 1 To tbl.Rows(1).Cells.Count
        tbl.Rows(1).Cells(i).Shading.BackgroundPatternColor = RGB(189, 214, 238) ' 浅灰色 (Light Gray)
    Next i
    ' 填充表格单元格
    tbl.Columns(1).Width = 50 : tbl.Cell(1, 1).Range.Text = "序号"
    tbl.Columns(2).Width = 50 : tbl.Cell(1, 2).Range.Text = "区域"
    '替换指定字符串
    doc.Content.Find.Execute(FindText:="序号", replacewith:="替换的文字", Replace:=2)
    '打开文件
    app.Visible = True
    doc.save
Catch ex As exception
    Output.Show(ex.message)
    app.Quit
Finally
End Try
GC.Collect()
Output.Show(Date.Now & "结束执行")
'Return msg

图片点击可在新窗口打开查看

老师,标红的两个都会报错
6楼
有点蓝 发表于:2024/9/2 19:33:00
帮助以外的东西学会百度:https://learn.microsoft.com/zh-cn/office/vba/api/word.wdlinestyle

.OutsideLineStyle = MSWord.WdLineStyle.wdLineStyleSingle
共6 条记录, 每页显示 10 条, 页签: [1]

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

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