我最近在我的工作中负责为客户进行文档标准化。他们是政府,所以我不能以示例的方式发布任何内容以供参考。对不起。
我想在 VBA 中做的是有一个 Word 文档,它有大约 80 个书签(我必须这样做 27 个文件)提取.Name书签和.SelectionExcel 工作表。
作为一个例子,我提供以下内容:
大家好,我叫世界!
如果上面是一个word文档,World!则是书签的名称.Selection,( Doc_World)将是书签名称。我正在尝试编写将写入"Doc_World"并写入"World!"Excel 工作表的宏。
最后一个警告是目前没有任何标准化,所以我需要它来循环浏览当前打开文档中的书签。
我实际上设法找到了一些可以做我想做的事情,然后将我找到的其他一些信息拼接在一起以创建一些有用的东西,但是您必须事先创建所有 xls 文件。@RachelHettinger 的答案比我自己想出的要优雅得多。仅供参考,以下是我的弗兰肯斯坦:
Sub WdBkMktoXL()
Dim ObjExcel As Object, ObjWorkBook As Object, ObjWorksheet As Object
Dim Bmk() As String
Dim x As Integer, J As Integer
Set ObjExcel = CreateObject("EXCEL.APPLICATION")
Set ObjWorkBook = ObjExcel.Workbooks.Open("C:\Users\Zach\Desktop\ETTP\TermsAndConditions\1.xlsx")
Set ObjWorksheet = ObjWorkBook.Worksheets("Sheet1")
x = ActiveDocument.Bookmarks.Count
ReDim Bmk(x)
For J = 1 To …Run Code Online (Sandbox Code Playgroud) 我试图弄清楚如何遍历文档并拉出所有表单字段并将它们插入到新的文本文件中.我正在努力寻找我将需要的功能的例子,我没有提出很多信息.也许我不是在搜索.这是我到目前为止所写的内容.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using Microsoft.Office.Interop.Word;
using System.IO;
namespace purform
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
// create instance of Word
Microsoft.Office.Interop.Word.ApplicationClass oWordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
// create instance of Word document
Microsoft.Office.Interop.Word.Document oWordDoc = new Document();
object missing = System.Reflection.Missing.Value;
try
{
//declare objects
object fileName = @"C:\\path\\to\\file.doc";
object readOnly = false; …Run Code Online (Sandbox Code Playgroud)