2016-11-28 45 views
0

如果答案在外面,我不会看到任何具体的问题,我真的只需要知道它是否可行以及在去之前这样做的最佳方法任何进一步。将单个Excel电子表格中的数据导出到多个单词模板

我有一个包含文本的字段数量的电子表格。这些每个都需要被转移到不同的单词模板(总共10个模板),该表单还包含指示每个单词在每个模板中的位置的列。 (有些会去多个模板)

最终目标是自动化从电子表格生成模板的过程。

到目前为止,我最初的想法是:

使用邮件合并功能(我从来没有这样做,那么将不得不考虑这一点)

使用VBA脚本

这些对我想做什么来说都是可行的? (我想我可以很容易地创建一个宏来安排excel中的数据,我真正的问题是自动进入正确的单词模板)

如果它们都可行,哪个更容易?

对不起,如果这不是很清楚,我只是想在得到一个消息灵通的印象之前采取这个前进是诚实的。

谢谢

+0

我认为在Excel中的VBA将能够实现这一点。但有些事情并不清楚。您是否想要创建的Word文档具有Excel文件的更新版本或静态版本?示例可以链接Excel文件,以便如果对Excel文件进​​行更改,则更改会自动更新为Word文档。这样做可能会产生其他问题,但是......如果您采用这种(手动)方法,则只需执行一次操作,而无需再次执行此操作即可在Word模板中手动创建Excel链接。 – JohnG

+0

可能出现的问题/问题始终是在打开/关闭时重新链接Word/Excel文件,可能有网络问题维持此“链接”到Excel文件。根据你想要的成品是什么,VBA应该工作,如果你熟悉VBA,我会从那里开始。 C#是我的选择,但处理Word的任何事情本身通常都是一个挑战。祝你好运。 – JohnG

+0

感谢您的信息。每周创建一个新的excel文件。内容被转移到适当的单词模板并保存为PDF。我会研究使用VBA。 –

回答

0

邮件合并应该为你做。如果你想使用DocVariables,你也可以这样做。以下是您可以尝试的示例脚本。

Sub PushToWord() 

Dim objWord As New Word.Application 
Dim doc As Word.Document 
Dim bkmk As Word.Bookmark 
sWdFileName = Application.GetOpenFilename(, , , , False) 
Set doc = objWord.Documents.Open(sWdFileName) 

objWord.activedocument.variables("FirstName").Value = Range("FirstName").Value 
objWord.activedocument.variables("LastName").Value = Range("LastName").Value 

ActiveDocument.Fields.Update 

objWord.Visible = True 

End Sub 
+0

令人惊叹的谢谢!我仍然在研究这个问题,不用说它正在慢慢发展,但是这非常令人欣慰 –

相关问题