VBA批量提取word表格中的自我评分

  单位里普遍存在各种低效率的办公行为,比如每年的自我评分。评分细目表为word文档,每行一个项目,每个项目要填写得分事项和分值,组长审核之后转成Excel向上递交。主要涉及到问题就是word文档中一列得分要转成Excel一行内容,如果一个人就复制,粘贴到Excel,再复制,转置即可。人一多,显得很麻烦。于是写了一段VBA来处理,在此保留备份。

  

Sub 汇总个人评分()
    Dim FolderPath$, FileName$, FilePath$
    Dim wdApp As Object
    Dim Doc As Object
    Dim Tbl As Object
    Dim index&, iRow&, iCol&

    Cells.ClearContents

    Set wdApp = CreateObject("Word.Application")
    FolderPath = ThisWorkbook.Path & "\"
    FileName = Dir(FolderPath & "*.doc*")

    iRow = 0
    Do While FileName <> ""
        iRow = iRow + 1
        FilePath = FolderPath & FileName
        Set Doc = wdApp.documents.Open(FilePath)
        Set Tbl = Doc.Tables(1)

        Cells(iRow, 1).Value = WithNoSymbol(tb.Cell(1, 2).Range.Text)
        iCol = 1
        For index = 3 To 26
            iCol = iCol + 1
            Cells(iRow, iCol).Value = WithNoSymbol(tb.Cell(index, 5).Range.Text)
        Next index

        iCol = iCol + 1
        ‘Cells(iRow, iCol).Value = WithNoSymbol(tb.Cell(27, 9).Range.Text)
        Doc.Close
        FileName = Dir
    Loop
    wdApp.Quit
    Set wdApp = Nothing

End Sub
Function WithNoSymbol(ByVal OrgStr As String) As String
    WithNoSymbol = Left(OrgStr, Len(OrgStr) - 2)‘去除Word文档单元格后面加上两个符号
End Function

  

时间: 2024-09-30 16:23:09

VBA批量提取word表格中的自我评分的相关文章

怎么批量修改Word表格的宽度

怎么批量修改Word表格的宽度 怎么批量修改Word表格的宽度呢.Word表格可根据窗口自动调整表格宽度,使得所有的表格宽度和页面宽度一样.当页面设置了新的页边距后,所有的表格都需要调整新的宽度.或者文档中有许多大大小小的表格,希望宽度全部调整与页宽一样.下面的方法就非常有用啦. 第一步.打开Word文档,按下[Alt + F11] 第二步.在VBA编辑器窗口的左上方,双击[ThisDocument] 第三步.在右侧选择[Document],再在其右侧下拉选择[Open] 第四步.然后在宏代码编

批量修改WORD表格属性

有时候需要对word中很多表格的属性进行修改,而word无法批量修改属性,所有这里记录一个宏 Sub TableFormatter() Dim oTbl As Table, i As Integer For Each oTbl In Selection.Tables With oTbl .Rows.AllowBreakAcrossPages = False .Rows(1).HeadingFormat = True For i = 1 To .Columns.Count If i = 1 The

如何使用免费控件将Word表格中的数据导入到Excel中

我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要将word表格中的数据导入到Excel中.相信大家也碰到过同样的问题,下面我就给大家分享一下在C#中如何使用免费控件来实现这一功能.这里,我使用了两个免费API, DocX和Spire.Xls. 有需要的朋友可以下载使用.下载地址: DocX:codeplex官网 Spire.Xls: E-iceb

C# 在Word表格中插入新行(表格含合并行)

public string CreateWordFile(string CheckedInfo)         {             string message = "";             try             {                 Object Nothing = System.Reflection.Missing.Value;                 Directory.CreateDirectory("C:/CNSI&q

word表格中怎么添加递增的序号

word2013表格中怎么添加递增的序号?word2013表格中想要让第一类自动显示递增序号,该怎么操作呢?下面我们就来分享两种方法,需要的朋友可以参考下 工具/原料 word2013 通过项目编号来实现 1 首先,我们打开一个空白的WORD的文档,建立一张表格,并在表格的第一列第一栏输入序号: 2 然后,选中第一列第二栏至最后栏,点击开始选项中的编号的下拉箭头,此时会弹出一个对话框,我们选择对话框下方的定义新编号格式: 3 接着,在弹出定义新编号格窗口,将第二项编号格式中的数字1后面的点去掉,

c# 提取word文件中的图片问题

最近遇到一个项目就是要从一份word中提取出所有的图片信息,功能看起来不是很难,只要使用office自带的Microsoft.Office.Interop.Word就可以解决问题.网上也有不少的文章来说明如何去实现.不过总体来说网上的内容分为两派一个是使用剪贴板来实现,一个是通过将图片转为byte数组来完成.个人倾向于后者,但是在实践过程中遇到了问题. 问题一:通过byte的方式来实现图片的提取会导致提取出来的图片的质量严重下降,这样的图片质量下降是无法通过修改图片质量的代码来优化和提高的.目前

批量解决 word/wps 中公式和文字不对齐的问题

完美解决Word或wps中中公式和文字对不齐的问题 在 word 的各个版本中,当公式和字符同时出现时,尤其是发生公式的拷贝粘贴时,公式往往会出现上飘或下移的情况,这里给出一个简单易行的解决方案: 全选 ? 字体 ? 字符间距 ? 位置 ? 标准: 段落 ? 中文版式 ? 文本对齐方式 ? 居中: 再分享一下我老师大神的人工智能教程吧.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow 原文地址:ht

利用Python将excel数据读取到word表格

在工作中可能需要两者对excel和word进行转化,今天介绍例如Python 将excel转word表格 看图,我需要将这份excel文档转word表格: 思路: 1.创建需要的表格: 2.读取excel文档: 3.将excel文档数据写入word表格对应的位置: 4.循环 需要用到的模块 创建表格,由于我需要的表格需要进行合并处理,所以使用merge合并单元格 接下来,读取excel文档数据 然后,将excel数据写入到已创建的word表格中 至此我们就可以将一条excel数据读取到word表

Java 操作Word表格

本文将对如何在Java程序中操作Word表格作进一步介绍.操作要点包括 如何在Word中创建嵌套表格. 对已有表格添加行或者列 复制已有表格中的指定行或者列 对跨页的表格可设置是否禁止跨页断行 创建表格,包括添加数据.插入表格.合并单元格.设置表格样式.单元格居中.单元格背景色,单元格字体样式等设置,可参考这篇文章里的内容. 使用工具:Free Spire.Doc for Java (免费版) Jar文件可通过官网下载jar文件包,下载后,解压文件,将lib文件夹下的Spire.Doc.jar导