Tag: ms word

从Excel VBA写入Word文档时,不能使用“Selection.TypeText”方法

我试图从Excel VBA写入Word文档,当我尝试在Selection对象上使用.TypeText方法时,出现错误:“对象不支持此属性或方法”。 我已经读过Excel VBA不知道我指的是Word文档中的Selection对象,所以我尝试了build议的解决scheme,即尝试在With End With块中执行此操作。 基本上我试过这个: Set WrdApp = New Word.Application Set DestDoc = WrdApp.Documents.Add With DestDoc .Activate .Select .Selection.TypeText Text:="Test" End With 但它总是报告.Selection.TypeText行上的相同的错误。 任何帮助,将不胜感激。

VBScript和多级OLE?

我做了一个vbscript来定位一些电脑,并对它们进行wmi查询,而我的老板想把这些数据放在一个文档里面。 问题是这个文档是一个Microsoft Word文档,里面embedded了excel对象。 现在我已经search了广泛和远在谷歌任何方式来定位和操纵一个对象内部和OLE对象,但我似乎无处可去。 所以我的问题是,如果有人有这样的代码,我可以看看,或者一个教程,甚至有可能甚至告诉我,如果这是可能的?

如何使用Excelmacros将Word中的一段文本复制到Excel?

我需要使用Excelmacros将特定项目的文本(一个或几个单词)从Word(2007)复制到Excel(2007),以获得多个文档。 到目前为止,我有Excelmacros,一次打开每个Word文档,并find我所需要的文字。 我现在需要: 移动到Word表格中的相邻单元格。 我在想wdApp.Selection.MoveLeft Unit:=wdCell (或MoveRight )其中wdApp是Word.Application 复制单元格的内容。 我想wdApp.Selection.Copy和wdDoc.Word.Range其中wdDoc是Word.Document但我不能select整个单元格的内容。 将其粘贴到Excel中的variables。 在这里,我不知道如何将剪贴板复制到一个Excelvariables。

微软Word表与自动计算

我正在尝试在底部设置一个公式表,并获得上面单元格的总和。 我试图把一个公式的细胞在底部,它工作正常。 问题是,当数据被更改时,它不会自动更新(您需要按F9)。 另一个问题是添加到单元格中的公式可能会通过按退格键删除。 我试图复制MS Excel的单元格(因为MS Excel在其公式中有自动更新function),但在MS Word中粘贴时不起作用。 有什么办法可以解决这个问题吗? 像创buildmacros,或从MS Excel中复制单元格的不同方式 谢谢!

如何将图表从Excel复制到Word?

我正在运行一个脚本来自动化一些我们的报告工作。 我们有来自我们的警报系统的数据,我们将其复制到一张有图表的Excel表格中。 然后,我们将图表从Excel表格复制到Word文档。 这并不难,除非你考虑到我们每个月要处理大约50台服务器。 我已经能够自动将数据转储到excel电子表格中,并更新图表。 我陷入了从Excel复制和粘贴到Word图表: $xl = new-object -comobject excel.application $xl.Visible = $true $wb = $xl.workbooks.open("C:\blah\Servername_graph.xlsx") $ws = $wb.worksheets.item(1) $charts = $ws.ChartObjects() $chart = $charts.Item(1) $a = $chart.copy $wd = new-object -comobject Word.application $wd.visible = $true $path = "C:\blah\doc.docx" $doc = $wd.documents.open($path) 正如你从代码中看到的,我打开Excel表格,select图表并复制它。 我打开文档,但不确定如何粘贴。

GemBox for word类似应用

我现在正在为我的项目使用GemBox。 目前我的模块只需要excel这就是为什么我已经尝试过,真的很喜欢使用这个应用程序。 跟我的PM谈谈购买它的可能性,但他们想要类似的东西,可能适用于word文档,也可能只是excel,以便其他人可以使用它,因为这是更常见的文字文件生成。

如何访问Office应用程序状态栏中的进度栏

我为Word和Excel构buildVBA应用程序,有没有办法访问有时出现在Office状态栏中的进度条。

从excel粘贴到word文档

我从Excel复制单元格到一个开放的文档。 我这样做的方式只是将单元格的内容复制到剪贴板中,并在word文档中replace特定的KEYWORD,如下所示: 如果单元格A1 = "some word"我也需要replace单词文档中的string“ QUERYA1 ” 我正在这样做: Sub NoFormatPaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute If IsEmpty(Selection.Text) And Len(Selection.Text) = 0 Then ClipEmpty.PutInClipboard appWd.Selection.PasteSpecial DataType:=wdPasteText End Else appWd.Selection.PasteSpecial DataType:=wdPasteText End If CutCopyMode = False End Sub 当这个子运行时,它会在每个字段上工作,除非它在单元格为空的时候给出一个错误。 我有这个公式在单元格中: =+IF(K10="XXX","",K10) 当这个公式产生任何东西或空白,我运行我的macros,我得到一个错误,在这个贴上这个词。 我得到一个错误,称为4168 command failed/command execution在这一行: appWd.Selection.PasteSpecial DataType:=wdPasteText 这是我的完整代码: Dim appWd […]

VBA晚期绑定 – 基于没有Word引用的用户计算机的用户表单

我有一个Excel的用户窗体/工作表打开一个Word文档/模板,并将该Word文档保存为一个PDF,具有特定的文件名,在同一个文件夹。 在我的Excel中的参考,我有Word对象库启用。 我的用户表单将在其他用户计算机上使用,这些用户计算机将不会启用这些引用(并且对于所有用户来说都太麻烦了)。 我的理解是,我所拥有的代码是“早期绑定”,它需要“后期绑定”来绕过其他用户启用对Word的引用的需要。 我的问题是我不知道或了解如何用我的代码做到这一点: Dim objWord As Word.Application Dim docWord As Word.Document Set objWord = CreateObject("Word.Application") Set docWord = objWord.Documents.Open(ThisWorkbook.Path & "\MyNewWordDocument.doc") docWord.ExportAsFixedFormat OutputFileName:=ThisWorkbook.Path & "\" + Cells(1, 6) + " – Offer Letter.pdf", _ ExportFormat:=wdExportFormatPDF objWord.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges objWord.Quit 这个代码对我自己来说是完全可用的 但是,如前所述,由于未引用Word,因此不适用于其他人。

文档中链接对象的文件path的VBA列表

我有许多大型Microsoft Word文档,其中包含许多Microsoft Excel电子表格中的许多链接文件。 打开Word文档时,即使选中了“打开更新链接文件”选项: Word通过打开和closures每个单独链接的相关Excel电子表格来检查每个链接的来源(即使从同一电子表格中,Word将打开并closures电子表格x次)。 这意味着打开文档需要很长时间 。 我发现如果包含链接对象源的电子表格已经打开,文档打开速度更快,所以Word不会打开,closures,重新打开它们。 到目前为止,我有一个解决scheme的开始是创build链接对象的所有文件path的列表,由以下VBA代码完成: Sub TypeArray() Dim List(), Path As String Dim i, x As Integer Dim s As InlineShape Dim fso As FileSystemObject, ts As TextStream Set fso = New FileSystemObject Set ts = fso.OpenTextFile("C:\MyFolder\List.txt", 8, True) With ts .WriteLine (ActiveDocument.InlineShapes.Count) End With For Each s In ActiveDocument.InlineShapes Path […]