excel - VBA 将 MS Word 段落复制到 Excel,错误 1004 PasteSpecial 范围类方法失败
问题描述
基于Copy Word Paragraph to Excel Cells中提出的问题,我正在尝试根据段落样式是否为标题 1、标题 2 将段落粘贴到 excel 工作簿第一张工作表的第 1、2、3、4 列中的文件中、标题 3 或标题 4。
我有以下代码:
Private Sub LS2()
Dim ParaCount As Integer
Dim wDoc As Word.Document
Dim objExcel As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
On Error Resume Next
Set objExcel = GetObject(, "Excel.Application")
On Error GoTo 0
If objExcel Is Nothing Then
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = True
End If
On Error Resume Next
Set wb = objExcel.Workbooks("new.xlsm")
On Error GoTo 0
If wb Is Nothing Then
Set wb = objExcel.Workbooks.Open("C:\Users\aesnj\OneDrive\Desktop\FPR\new.xlsm")
End If
Set wDoc = ActiveDocument
Set ws = wb.Sheets("Sheet1")
For ParaCount = 1 To wDoc.Paragraphs.Count
If wDoc.Paragraphs(ParaCount).Range.Style = wdStyleHeading1 Then
wDoc.Paragraphs(ParaCount).Range.FormattedText.Copy
ws.Cells(ParaCount, 1).PasteSpecial Paste:=xlPasteFormats
ElseIf wDoc.Paragraphs(ParaCount).Range.Style = wdStyleHeading2 Then
wDoc.Paragraphs(ParaCount).Range.FormattedText.Copy
ws.Cells(ParaCount, 2).PasteSpecial Paste:=xlPasteFormats
ElseIf wDoc.Paragraphs(ParaCount).Range.Style = wdStyleHeading3 Then
wDoc.Paragraphs(ParaCount).Range.FormattedText.Copy
ws.Cells(ParaCount, 3).PasteSpecial Paste:=xlPasteFormats
ElseIf wDoc.Paragraphs(ParaCount).Range.Style = wdStyleHeading4 Then
wDoc.Paragraphs(ParaCount).Range.FormattedText.Copy
ws.Cells(ParaCount, 4).PasteSpecial Paste:=xlPasteFormats
End If
Next ParaCount
ws.Columns(1).AutoFit
End Sub
但是,我首先遇到了错误: 'new.xlsm does not exist, could it be removed or renamed'
'错误,所以创建了一个空的'new,xlsm'文件。之后,它一直运行到 for 循环,然后说'Error 1004 VBA PasteSpecial Method of Range Class Failed'
. 我尝试在文件顶部添加“选项显式”,但不走运。有谁知道问题是什么?
解决方案
推荐阅读
- docker - Teamcity - 多个 docker 注册表凭证
- sql - 合并来自没有匹配值的 2 个数据集的数据 (SQL)
- xamarin - Xamarin Forms Android:获取 XA3001:无法 AOT 程序集
- python-3.x - tkinter 的 .pack 方法没有正确划分空间
- c# - 使用源目录中的文件的 C# 应用程序,如果它开始使用其他应用程序,则会在查找文件时出错
- razor - asp.net razor core 在帖子上插入多条记录
- python-3.x - 使用python装饰器时在vs代码中编译错误
- tensorflow - 是否可以将多个图像打包到一个 TFRecord 示例中?
- bash - bash 循环遍历主文件以确定特定文件夹中出现的次数
- excel - 如何用空白替换 VBA 公式错误