excel如何用宏逐行添加信息 (excel如何把数据批量导入word模板)

复制以下代码到excel宏中执行

如何将excel表格数据批量对应word,excel中如何快速插入行快捷键

Sub 手动选择文件夹插入对象图标()

Dim objWord As Object

Dim objDoc As Object

Dim strPath As String

Dim strFolder As String

Dim i As Integer

Dim arrFiles() As String

Dim j As Integer

Dim temp As String

Dim startRow As Integer

'手动选择文件夹路径

With Application.FileDialog(msoFileDialogFolderPicker)

.Title = "请选择要插入的 Word 文档所在的文件夹"

.AllowMultiSelect = False

If .Show <> -1 Then Exit Sub

strFolder = .SelectedItems(1)

End With

'获取文件夹内的所有Word文档

strPath = Dir(strFolder & "\*.docx")

i = 0

Do While strPath <> ""

ReDim Preserve arrFiles(i)

arrFiles(i) = strPath

i = i + 1

strPath = Dir

Loop

'按类型排序

For i = 0 To UBound(arrFiles) - 1

For j = i + 1 To UBound(arrFiles)

If UCase(Right(arrFiles(i), 4)) > UCase(Right(arrFiles(j), 4)) Then

temp = arrFiles(i)

arrFiles(i) = arrFiles(j)

arrFiles(j) = temp

End If

Next j

Next i

'打开Word文档

Set objWord = CreateObject("Word.Application")

'从光标所在单元格开始插入对象图标

startRow = ActiveCell.Row

startRow = startRow + 1

For j = 0 To UBound(arrFiles)

Set objDoc = objWord.Documents.Open(strFolder & "\" & arrFiles(j))

ActiveSheet.OLEObjects.Add(Filename:=strFolder & "\" & arrFiles(j), Link:=False, DisplayAsIcon:=True, _

IconFileName:="C:\PROGRA~2\Microsoft Office\Office14\WINWORD.EXE", _

IconIndex:=0, IconLabel:=arrFiles(j)).Select

Cells(startRow, ActiveCell.Column).Select

startRow = startRow + 1 '插入下一行

objDoc.Close SaveChanges:=False

Next j

'关闭Word文档

objWord.Quit

End Sub

这段 VBA 代码用于在 Excel 中插入 Word 文档的对象图标。具体实现过程如下:

  1. 手动选择文件夹路径:使用 Application.FileDialog 对象打开文件夹选择对话框,让用户手动选择要插入的 Word 文档所在的文件夹。
  2. 获取文件夹内的所有 Word 文档:使用 Dir 函数获取指定文件夹内的所有 Word 文档,并将它们的文件名存储在一个字符串数组中。
  3. 按类型排序:使用冒泡排序算法,按照文件类型(即文件扩展名)对字符串数组进行排序,以便按照顺序插入 Word 文档的对象图标。
  4. 打开 Word 文档:使用 CreateObject 函数创建 Word 应用程序对象,并使用 Documents.Open 方法打开每个 Word 文档。
  5. 插入对象图标:使用 ActiveSheet.OLEObjects.Add 方法在 Excel 中插入 Word 文档的对象图标,并使用 Cells 属性指定插入对象图标的单元格。
  6. 关闭 Word 文档:使用 Close 方法关闭每个 Word 文档,并使用 Quit 方法关闭 Word 应用程序对象。

在这段代码中,还使用了一些 VBA 对象和方法,例如 Application.FileDialog 对象、Dir 函数、ReDim Preserve 语句、冒泡排序算法、CreateObject 函数、Documents.Open 方法、ActiveSheet.OLEObjects.Add 方法、Cells 属性、Close 方法和 Quit 方法等。