使用Excel文件创建格式化的Word文件

时间:2017-09-23 19:00:47

标签: excel ms-word software-design file-conversion

我需要创建一个自定义软件,将Excel文件转换为格式化的Word文件。

从下面的Excel文件中;

enter image description here

使用给定格式的这个word文件。

现在我还没有做过任何工作。但是,我有一些使用Python文件格式的想法,但我不确定。如何编写可以完全自动化此过程的软件,我该怎么办?例如,将Excel文件作为输入并生成格式化的Word文件。

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以使用Python附带的csv模块。函数csv.reader()将允许您遍历csv文件的行。另外,pandas,另一个Python模块(你必须下载)在处理数据时也是一个很好的选择。但是,我相当肯定它不会是自动的,并且您必须处理将其转换为Word文件。

答案 1 :(得分:0)

您可以使用Excel公式(例如= Concatentate)将完成的句子收集到单独的选项卡上,例如命名为#34;摘要",在命名范围内,例如" StudentInfo"。然后关闭电子表格。

在Word中,使用你的技能将光标移动到正确的位置,然后尝试:

Sub CopyNamedRangeFromExcelWorkbook()
     ' For this to work, must go to VB Editor and pick --> Tools > References > Miscorsoft Excel 15.0 Obj Lib
     Dim xlApp As Excel.Application
     Set xlApp = CreateObject("Excel.Application")
     xlApp.Visible = False

     Dim xlWorkbook As Excel.Workbook
     Set xlWorkbook = _ 
         xlApp.Workbooks.Open("C:\Users\Desdemona\Desktop\TheSpreadsheet.xlsx")
     xlWorkbook.Worksheets("Summary").Range("StudentInfo").Copy
     Selection.Paste ' pastes the excel data as a Word table
     xlWorkbook.Close
     xlApp.Quit
     ' now apply a format to the word table, or revert it to text, or whatever.
 End Sub

答案 2 :(得分:0)

另一种可能性是:

  1. 首先,将数据重新排列为表格格式,例如,列A中的名称,列B中的性别等。您可以编写一个简单的VBA例程,以根据原始文件创建表格文件。
  2. 使用Word的邮件合并功能通过填写Excel文件中的数据字段来编写段落。
  3. 希望有所帮助。