zoukankan      html  css  js  c++  java
  • 20170706xlVBA批量提取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
    

      

  • 相关阅读:
    环形二维数组
    梦断代码(三)
    梦断代码(二)
    梦断代码(一)
    CNblogs用户体验
    《软件工程》--读书笔记三
    《软件工程》--读书笔记二
    《软件工程》--读书笔记一
    找出水王
    典型用户
  • 原文地址:https://www.cnblogs.com/nextseven/p/7124062.html
Copyright © 2011-2022 走看看