Tag: word vba

在Excel中为Word文件创buildVBA中的Tabstops

我需要通过Excelmacros将两个不同的文本部分自动插入到新生成的文件中。 这是我的代码的一个例子。 首先,我清除所有现有的选项卡,以获得一个干净的文档,然后我想把“这个文本应该在左边alignment”和左边alignment,“这个文本应该在右边alignment”在同一行右边。 .Content.Paragraphs.TabStops.ClearAll .Content.InsertAfter "This text should be aligned on the left" .Content.Paragraphs.TabStops.Add Position:=NewPos, _ Alignment:=wdAlignTabRight, _ Leader:=wdTabLeaderLines .Content.InsertAfter "This text should be aligned on the right" .Content.InsertParagraphAfter 使用这个命令,我设法在Word中生成一个Tabstop,但是我似乎无法定位它,或者使“这个文本应该在右边alignment”alignment到右边。 最后它应该是这样的: 这两个文本部分应由VBA生成并按此方式alignment。

将Excel中的date粘贴复制到不同格式的Word中

我有一个macros从Excel复制某些数据,并将其粘贴到Word,但是我正在寻找一种方法来修改粘贴前的date格式。 这目前复制Excel中显示的date,即16/01/2015 Sub NoFormatPaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute appWd.Selection.PasteSpecial DataType:=wdPasteText CutCopyMode = False End Sub Cells(Application.ActiveCell.Row, 14).Select Selection.Copy wdFind.Text = "DATE" Call NoFormatPaste 不过,我想以不同的格式粘贴它。 这样的东西,但它不工作。 即2015年1月16日星期五 Sub NoFormatDatePaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute appWd.Selection = Format(date_example, "dddd d mmmm yyyy") CutCopyMode = False End […]

VBA,如何将Word表格作为图片(增强型图元文件)粘贴到电源点上?

我有一个Excel工作簿,充当仪表板并运行代码来打开多个单词文件与一个表,复制表,然后将其粘贴到特定的幻灯片中的电源点。 我想弄清楚如何从Word中复制表格并将其作为增强型图元文件图片粘贴到Power Point中。 到目前为止,当我有我的代码,我得到一个错误(对象不支持这种方法)在pastespecial代码: word_1.tables(1).Range.Copy PP.slides(destination_1).Shapes.PasteSpecial(ppPasteEnhancedMetafile) 现在我正在考虑将图像首先粘贴到excel的备用表格中,然后复制粘贴到power point中。 我想避免这一步。 有谁知道如何粘贴表格作为一个图片(增强图元文件)从单词到PowerPoint? 我的完整代码如下: Sub Debates_to_PP() Dim destination_1 As Long Dim objWord As Object Set wb1 = ActiveWorkbook 'set slide destinations — (needs to be a loop) destination_1 = wb1.Sheets("Dash").Cells(12, 8).Value 'get path for PP PPPath_name = wb1.Sheets("Dash").Cells(4, 10).Value PPfile_name = wb1.Sheets("Dash").Cells(4, 11).Value 'Combine File Path names PPfiletoopen […]

用文本和图像填充邮件项目

我在Excel VBA中有以下代码: Sub CreateEmailAndSend() Dim outApp As Object Dim OutMail As Object Set outApp = CreateObject("Outlook.Application") Set oMail = outApp.CreateItem(0) Dim Doc As Object oMail.Display Set Doc = outApp.ActiveInspector.WordEditor oMail.To = "" oMail.Subject = "test" ' first sentence Dim msg As String msg = "Plain Sentence" Doc.Range(0, 0) = msg ' second sentence comes after […]

parsingHTML以使用VBA重新创buildWord文档中的表

有没有一种方法来获取表格的HTML代码,并使用VBA打印出一个Word文档中的同一个表(VBA应该能够parsing表格的HTML代码块)? 可以将表格的内容复制到Word中创build的新表格中,但是是否可以使用html代码和vba重新创build表格? 对于这一切,哪里可以开始研究? 编辑:感谢R3uK:这是VBA脚本的第一部分,从文件中读取一行html代码,并使用R3uK的代码将其打印到Excel工作表: Private Sub button1_Click() Dim the_string As String the_string = Trim(ImportTextFile("path\to\file.txt")) ' still working on removing new line characters Call PrintHTML_Table(the_string) End Sub Public Function ImportTextFile(strFile As String) As String ' http://mrspreadsheets.com/1/post/2013/09/vba-code-snippet-22-read-entire-text-file-into-string-variable.html Open strFile For Input As #1 ImportTextFile = Input$(LOF(1), 1) Close #1 End Function ' Insert R3uK's portion of the […]

当单元格的值变化exel vba时如何获得msgbox

我有一个单元格“A1”,从“1到150”的整数值变化,假设如果“A1”cell.Value =“1”那么我应该得到msgbox包含其A1值为“1”。 如果“A1”的单元格值=“2”,那么我应该得到msgbox包含其A1值为“2” 同样,如果A1值是3,4,5等等,那么我应该得到相应的单元格值msgbox我写了一个代码,如下所示。 但如果代码语句范围从“1到150”是困难的任务,可以任何人最小化这个代码添加variables这个..预先感谢 sub variable() If Range("a1").Value = 1 Then MsgBox Worksheets("Sheet1").Range("A1").Value Else If Range("a1").Value = 2 Then MsgBox Worksheets("Sheet1").Range("A1").Value Else If Range("a1").Value = 3 Then MsgBox Worksheets("Sheet1").Range("A1").Value End If End If End If End Sub

在Word文档中查找章节的标题,并用VBA将单个段落复制到新的单词文件中

由于没有人能够帮我解决我之前发布的问题(链接在下面),我现在正在尝试通过VBA来解决这个问题。 在word文件中find一个标题,然后用python将整个段落复制到新的word文件中 简要回顾一下,我有大量的文字文件,我想把它们分别缩小到更可读的大小。 在每个文件中,有一个标题出现多次,总是被格式化为“标题2”。 我在文档中寻找这种多次出现的特定标题,我想将这些章节中的所有文本部分与各自的标题复制到一个新的单词文档中。 我决定创build一个excel文件,其中列出了我想要复制的章节的文件和相应的标题(见下图)。 为了做到这一点,我写了下面的代码: Sub SelectData() Application.ScreenUpdating = False Dim WdApp As Word.Application Set WdApp = CreateObject("Word.Application") Dim Doc As Word.Document Dim NewDoc As Word.Document Dim HeadingToFind As String Dim ChapterToFind As String Dim StartRange As Long Dim EndRange As Long Dim WkSht As Worksheet Dim LRow As Long Dim i As […]

用wordmacros返回excel的最后一行

如何使用Wordmacros复制未定义的范围从excel和过去的Word文档。 我尝试了下面,但不能成功。 你能帮我么。 注意:如果我提到范围工作正常,而我想使用代码NumberOfRows = .Range("A65536").End(xlUp).Rowmacrosmacros – 我得到运行时错误1004。 Sub InputExcel() Set appExcel = CreateObject("Excel.Application") Dim INP_File As Variant Dim lngRows As Long Dim LenMgs As Long Dim NumberOfRows As String INP_File = appExcel.GetOpenFilename("Excel files (*.xlsx;*.xls),*.xlsx;*.xls", 2) appExcel.Workbooks.Open INP_File If INP_File > 0 Then Selection.Find.ClearFormatting With Selection.Find .Text = "Sample" .Replacement.Text = "" .Forward = True […]

Word VBA,select整个文档减去第一页

我知道你可以像这样select整个文档 oWord.oDoc.ActiveWindow.Selection.WholeStory select整个文档减去第一页的语法是什么? 上下文:Excel将运行所有代码,并将范围直接输出到单词以构build报告。 报告可以是任意数量的页面,并且页面数量是未知的。 这个代码将作为最后一个文件运行,所以文件将被build立在这一点上。

Word VBA插入书签和格式

我试图从Excel表格插入一系列的78个值到Word文档中。 这是为了容易生成文字文件。 以下代码允许我插入: Option Explicit Sub WriteExtension() ' ' WriteExtension Macro ' ' copyFile Dim nWord As New Document word.Application.ScreenUpdating = False Set nWord = Documents.Open("C:\target\file\here\targetfile", Visible:=False) 'initialize excel variables Dim oExcel As Excel.Application Dim oWorkbook As workbook Dim oWorksheet As worksheet 'initialize excel object Set oExcel = New Excel.Application oExcel.ScreenUpdating = False Set oWorkbook […]